停止IIS解码URL中的%2f

时间:2018-10-15 16:57:58

标签: iis asp.net-core kestrel-http-server

我的应用程序中有一个API端点,它接受字符串作为URL参数,其中可能包含编码为/的{​​{1}}。

例如,%2f

控制器动作会以编码状态(GET http://localhost:5000/api/foo/some%2fstring)接收此参数,并能够根据需要对其进行处理。

但是,一旦部署到IIS,就会中断。 IIS似乎在将URL传递给Kestrel之前对其进行了解码。日志显示如下:

some%2fstring

很明显,该模式与路线和请求404s不匹配。

如何防止IIS在将URL发送给Kestrel之前操纵URL?

0 个答案:

没有答案