C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.74771 の関連記事表示

<< 0 >>
■74771  Re[2]: WebDAVサーバーファイルアップロードのエラー
□投稿者/ れい -(2015/01/28(Wed) 17:06:18)
    No74767 (DSC渡邊 さん) に返信
    > 何が原因で動作しなくなったのか、分からなくて困っています。教えてほしいのは以下の点です。
    > @「基礎になる接続が閉じられました: 受信時に予期しないエラーが発生しました」の発生原因の調べ方

    ネットワークのトレースを行うか、
    WireSharkなどパケットキャプチャソフトを使うのがよいかと思います。
    サーバー側のログや、間にルーターやプロキシがあるならそのログも参考になります。

    > A上記の修正内容で大容量のファイルアップロードを成功させる方法があれば教えてほしいです。
    > B上記以外の修正方法で、アップロードを動作させる方法があれば教えてほしいです。

    サーバーを変えて動かなくなったのであれば
    うまく動くサーバーと動かないサーバーの「差」を検証すればよいかと。

    サーバーの詳細、認証方法などが明示されていないので私の経験からの推測になりますが、
    単に認証で蹴られているだけかと思います。
    ですので下記の方法で試すとよいかと。

    方法@ 空PUT

    まず、
    HttpWebRequest.ContentLength=0
    を指定してPUTで目的のファイルと同名の空ファイルを作成。
    その後すぐに
    HttpWebRequest.ContentLength=正しいファイルサイズ
    HttpWebRequest.AllowWriteStreamBuffering = false
    HttpWebRequest.SendChunked=false
    としてもう一度上書きでPUT。

    方法A PreAuth

    HttpWebRequest.PreAuthenticate = true
    HttpWebRequest.ContentLength=正しいファイルサイズ
    HttpWebRequest.AllowWriteStreamBuffering = false
    HttpWebRequest.SendChunked=false
    としてPUT


    サーバーのアクセス権の設定や認証方式によっては上記ではダメな場合があります。
    その場合はサーバーの設定などの詳細があればわかるかもしれません。

    それと

    > ※「request.SendChunked = False」の設定をして、「request.AllowWriteStreamBuffering = False」のままだと「この要求には、データのバッファーが必要です。」というエラーになってしまう為、「request.AllowWriteStreamBuffering = False」を「True」にしました。

    ContentLengthを設定すればエラーは出ないはずです。
記事No.74767 のレス /過去ログ126より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -