4

这是我的网址-

http://localhost:4566/PropertyMap/project/ackruti-gardenia-dahisar-&-beyond-mumbai

我得到了错误 -

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息: System.Web.HttpException:从客户端 (&) 检测到潜在危险的 Request.Path 值。

堆栈跟踪:

[HttpException (0x80004005): 从客户端 (&) 检测到潜在危险的 Request.Path 值。]
   System.Web.HttpRequest.ValidateInputIfRequiredByConfig() +9673044
   System.Web.ValidateRequestExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +35
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +155

我该如何解决?

4

2 回答 2

7

与号( &) 在 URL 中具有特殊含义,用于分隔Query StringFragment部分中的元素。默认情况下禁止这种用法,因为黑客通常会像这样进行探测,试图发现漏洞。

为避免这种情况,您需要在路径上使用 URL 编码,因此 & 符号被编码为%26,从而形成最终 URL:

http://localhost:4566/PropertyMap/project/ackruti-gardenia-dahisar-%26-beyond-mumbai

由于您没有指定构建 URL 的位置,因此我无法帮助您正确编码它 - 每种语言的实现都不同。

于 2013-04-23T21:10:07.057 回答
5

使用HttpUtility.UrlEncode()方法

于 2013-04-23T21:14:15.167 回答