Повторяющиеся запросы только в некоторых сетях - PullRequest
2 голосов
/ 18 мая 2019

У меня приложение ASP.NET, работающее на клиент-сервере (W2016, .NET 4.5). Когда я получаю доступ к одной из страниц на их сервере из нашего офиса, страница попадает один раз. Проверка журналов IIS (%SystemDrive%\inetpub\logs\LogFiles\W3SVC2) показывает GET для этой страницы, затем я нажимаю кнопку на странице, и файл журнала показывает POST. Кажется, до сих пор это работает нормально.

Теперь, когда я удаленно подключаюсь к сети клиента и получаю доступ к странице с одного из их локальных компьютеров, в файле журнала отображается GET, затем я нажимаю кнопку на странице, и в журнале отображаются два сообщения POST одновременно. Первый показывает статус (sc-status, sc-substatus, sc-win32-status) 200 0 64 , второй показывает 200 0 0 . В файле журнала оба сообщения POST идентичны. В основном журнал выглядит так (за исключением того, что я замаскировал некоторые данные):

#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) sc-status sc-substatus sc-win32-status 
2009-08-11 20:19:32 x.x.x.x GET /File.aspx - 80 - y.y.y.y Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+6.0;+WOW64;+Trident/4.0;+SLCC1;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.21022;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30618;+MDDR;+OfficeLiveConnector.1.4;+OfficeLivePatch.0.0) 200 0 0
2009-08-11 20:19:45 x.x.x.x POST /File.aspx - 80 - y.y.y.y Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+6.0;+WOW64;+Trident/4.0;+SLCC1;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.21022;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30618;+MDDR;+OfficeLiveConnector.1.4;+OfficeLivePatch.0.0) 200 0 64
2009-08-11 20:19:45 x.x.x.x POST /File.aspx - 80 - y.y.y.y Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+6.0;+WOW64;+Trident/4.0;+SLCC1;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.21022;+.NET+CLR+3.5.30729;+.NET+CLR+3.0.30618;+MDDR;+OfficeLiveConnector.1.4;+OfficeLivePatch.0.0) 200 0 0

Проблема в том, что страница попадает дважды. База данных выполняет операцию для первого запроса, затем второй запрос обнаруживает, что выполняется дублирующаяся операция, и выдает сообщение об ошибке. Пользователи считают, что их операция не удалась, но на самом деле она прошла успешно.

Я пытался найти общие вещи, такие как браузер, ОС, брандмауэр и ... но у них ничего не было.

Обновление : происходит только при включенном SSL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...