1

Fiddler の起動時にサーバーにファイルをアップロードしようとしたときに、誰かが HttpWebRequest クラス (または新しい HttpClient) を使用する際に問題が発生したかどうかを尋ねたかっただけです。

バグに遭遇しました。つまり、フィドラーの起動時にHttpWebRequestクラスのAllowWriteStreamBufferingプロパティが機能しないため、アップロードの進行状況がまったく機能しません。AllowWriteStreamBuffering を true に設定しても、バイトは即座に送信されずにバッファリングされるため、アップロードの進行状況を追跡できません。フィドラーが起動されていない場合は問題なく動作します。

さらに、アプリケーションがファイルをアップロードしているときにフィドラーを閉じると、クラッシュしてクラッシュし、「基になる接続が閉じられました: 受信時に予期しないエラーが発生しました」という WebException がスローされます

新しい .net 4.5 HttpClientクラスでも同じことが起こっています。

4

2 に答える 2

3

混乱させて申し訳ありません; Fiddlerは現在、リクエストのストリーミングではなく、レスポンスのストリーミングのみをサポートしています。

一部のプロキシ(Fiddlerなど)またはその他の仲介者は、パフォーマンスまたは機能(ウイルススキャン、ブレークポイントデバッグなど)の理由で、サーバーに送信する前に要求を完全にバッファリングします。

http://www.fiddler2.com/fiddler/help/streaming.asp

于 2012-12-11T23:04:17.170 に答える
2

わかりました。これに興味がありました。AllowWriteSteamBufferingが機能するには、サーバーがチャンク転送エンコーディングをサポートしている必要があります。プロキシと前述のチャンクエンコーディングに関するこのフォーラム投稿に私を導きました:https ://groups.google.com/forum/?fromgroups =#!topic / httpfiddler/UkOiK96kg_k 。

私がここで読んだことから、プロキシを使用すると、チャンク化されたエンコーディングなどを取得する場合と取得しない場合があるため、問題が発生するようです。

私はまた、これが役立つかもしれないフィードバック付きのアップロードに関する良い詳細な記事のように思われることを見つけましたか?

http://blogs.msdn.com/b/delay/archive/2009/09/08/when-framework-designers-outsmart-themselves-how-to-perform-streaming-http-uploads-with-net.aspx

于 2012-12-11T17:12:47.160 に答える