Остановить декодирование IIS% 2f в URL - PullRequest
0 голосов
/ 15 октября 2018

В моем приложении есть конечная точка API, которая принимает строку в качестве параметра URL, который может содержать /, закодированный как %2f.

Например, GET http://localhost:5000/api/foo/some%2fstring

Действие контроллера получает этот параметр в своем закодированном состоянии (some%2fstring) и может обрабатывать его так, как считает нужным.

Однако после развертывания в IIS это прерывается.IIS, кажется, декодирует URL-адрес перед передачей его Kestrel.Журналы показывают что-то вроде этого:

info: Microsoft.AspNetCore.Hosting.Internal.WebHost[1]
      Request starting HTTP/1.1 GET http://example.com/api/foo/some/string application/json 

Очевидно, что шаблон не соответствует маршруту, и запрос 404 с.

Как я могу запретить IIS манипулировать URL-адресом перед отправкойKestrel

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