Fiddler делает поведение HttpWebRequest/HttpClient неожиданным

Просто хотел спросить, сталкивался ли кто-нибудь с проблемой использования класса HttpWebRequest (или даже нового HttpClient) при попытке загрузить какой-либо файл на сервер при запуске Fiddler.

Я столкнулся с ошибкой, а именно, свойство AllowWriteStreamBuffering класса HttpWebRequest не работает при запуске фиддлера, поэтому процесс загрузки вообще не работает. Байты не отправляются мгновенно, но буферизируются, даже если для параметра AllowWriteStreamBuffering установлено значение true, поэтому я не могу отслеживать ход загрузки. Это работает нормально, когда Fiddler не запущен.

Более того, если я закрою fiddler, когда мое приложение загружает какой-либо файл, оно тоже аварийно завершит работу, выдав исключение WebException, которое сообщает: " Основное соединение было закрыто: при получении произошла непредвиденная ошибка ".

То же самое происходит с новым классом.net 4.5 HttpClient.

2 ответа

Решение

Извините за путаницу; Fiddler в настоящее время поддерживает только потоковую передачу ответов, а не запросов.

Некоторые прокси-серверы (например, Fiddler) или другие посредники будут полностью буферизовать запрос перед отправкой его на сервер по причинам производительности или функциональности (например, поиск вирусов, отладка точек останова).

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

Хорошо, меня это заинтересовало, похоже, что для того, чтобы AllowWriteSteamBuffering работал, сервер должен поддерживать кодирование передачи Chunked. который привел меня к этому сообщению на форуме о прокси и вышеупомянутой кодированной части: https://groups.google.com/forum/?fromgroups=.

Из того, что я здесь прочитал, следует, что при использовании прокси вы можете получить или не получить кодировку по частям и т. Д., Следовательно, ваша проблема.

Я также нашел это, которое казалось хорошей подробной статьей о загрузке с отзывами, которые могут быть полезны?

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

Другие вопросы по тегам