Я вижу странную проблему, и я не знаю, как ее отлаживать.
Я использую Windows 10 версии 1511 (сборка ОС 10586.318)
Я работаю с внутренней веб-службой, которая возвращает json, и сегодня заметил, что он начал возвращать искаженный json (последний '}' отсутствует), когда я попадаю в конечную точку непосредственно из установленных веб-браузеров (Chrome, Firefox, Edge). Этого не происходит, когда я вызываю конечную точку из Powershell или C #.
Я установил Wireshark локально и на сервере приложений, на котором размещена веб-служба. Быстрый захват в обоих местах показывает, что пакет отправляется правильно и принимается правильно (с неповрежденным последним символом "}").
Однако, когда я захватываю трафик с помощью Fidder4, последний '}' отсутствует.
Чтобы добавить веселья, эта проблема не возникает ни у кого в Windows 7 или Ubuntu LTS, использующего одну и ту же службу.
Есть идеи о том, как отлаживать это дальше?
Обновление 1. Я еще раз взглянул на пакет, захваченный Wireshark, пакет, захваченный Fiddler4, и ответ, который видит Chrome в инструментах разработчика. Я заметил, что заголовок «Content-Encoding: deflate \ r \ n» отсутствует. Я не знаю, почему он пропадает.
Я не ожидаю, что у меня возникнет проблема с сетью, потому что записи с помощью Wireshark имеют символ '}'.
Подозреваю ошибку в антивирусе или плагине браузера.
Примечания с плаката. В конечном итоге это была ошибка пакета ESET Endpoint Antivirus, а именно функция, называемая «Защита доступа в Интернет ESET». На данный момент изменение этой функции для исключения внутреннего трафика решило проблему.