У меня есть некоторые C#-заглушки для веб-службы Java (Https) (созданной в Visual Studio 2008, .NET 2.0). Сервер не разрешает выполнение запросов. Я смог установить sendChunked в false в HttpWebRequest.HttpWebRequest для сервера, который не разрешает chunking, не работает
Когда я вызываю методы веб-сервиса, которые имеют очень мало данных, проходящих через провод, они работают нормально.
Однако, когда я отправляю запросы, содержащие значительный объем данных, я получаю ошибку «неспособность разобрать запрос».
Вот две странные вещи:
- Это прекрасно работает через Java, установив HttpConstants.CHUNKED ложь, и если вы этого не сделаете, что он порывает с тем же «Не удалось разобрать ошибки запроса» ,
- Если у меня есть скрипач, работающий в фоновом режиме, все работает отлично ?! Я считаю, что это связано с тем, что Fiddler буферизует байты запроса перед их отправкой. ПРИМЕЧАНИЕ. Если я отключу параметр Fiddler для «Расшифровать HTTPS», он перестанет работать.
Буферизация Fiddler может объяснить, почему проблема не воспроизводится, но это говорит о том, что проблема на самом деле не является кодировкой Chunked, поскольку Fiddler не удаляет кодировку Chunked, если вы не сообщите об этом. – EricLaw