【发布时间】:2013-06-27 10:26:01
【问题描述】:
我正在使用编码查询字符串,但遇到了问题。
网址: default.aspx?qX81JvYf9eQ%3d-dmVoaWNsZUlkPTE0MTM%3d
在Page_Load 上,我使用Request.QueryString 检索查询字符串,但它在 IIS Express 和我的本地 IIS 8 服务器上返回不同的结果:
IIS Express:qX81JvYf9eQ%3d-dmVoaWNsZUlkPTE0MTM%3d(正确)
IIS 8:qX81JvYf9eQ%3d-dmVoaWNsZUlkPTE0MTM%3d%3f
IIS 8 有一个额外的“%3f”。
为什么会这样?我假设这一定是由于某处的某些 IIS 设置造成的。
【问题讨论】:
-
%3f 是一个编码的问号。
-
是的,我知道,但它来自哪里?
-
不应该也给QS参数起个名字吗?喜欢
default.aspx?foo=qX81JvYf9eQ%3d-dmVoaWNsZUlkPTE0MTM%3d(注意 foo=)... -
它解码到那个。我的问题是为什么 Request.QueryString 在 IIS Express 和 IIS 8 上返回不同的结果。
标签: c# asp.net .net iis query-string