HttpMethod становится пустым, когда запрос попадает на сервер - PullRequest
0 голосов
/ 05 ноября 2019

Обновлена ​​базовая служба .net с 2.1.7 до 2.1.11, после обновления мы видим случайный сбой тестирования. Причиной сбоев является то, что HttpMethod становится empty string после того, как запрос попадает на сервер.

Проверено на прокси-сервере, HttpMethod правильно отправляется из тестов. Однако, когда запрос попадает на сервер, мы получаем HttpMethod как empty string, RANDOMLY . Когда-нибудь все тесты проходят, иногда мы видим сбои.

Эта проблема возникает, только когда мы развертываем сервис на AWS, когда сервис и тесты выполняются локально, все тесты проходят.

На AWS мызапускают службу поверх образа .net core 2.1.11.

что может быть причиной этой проблемы? что мы можем сделать, чтобы исправить это?

Более подробную информацию о проблеме.

У нас есть промежуточное программное обеспечение, которое выполняется до того, как запрос достигнет класса контроллера. Это промежуточное программное обеспечение выполняет различные операции, одна из которых - проверка подлинности.

Когда мы проверяем HttpMethod из входящего запроса, он приходит как пустая строка.

Мы выбираем httpMethod по строке кода ниже

HttpContext.HttpRequest.Method

Он не блокируется http.sys. Однако, когда промежуточное ПО обнаруживает httpMethod == "", оно выдает исключение. Пожалуйста, следуйте приведенному ниже фрагменту кода

...