【发布时间】:2011-08-23 10:50:33
【问题描述】:
我收到相当不言自明的错误:
检测到来自客户端 (*) 的潜在危险 Request.Path 值。
问题是由于请求 URL 中的*:
https://stackoverflow.com/Search/test*/0/1/10/1
此 url 用于填充搜索页面,其中 'test*' 是搜索词,并且 url 的其余部分与各种其他过滤器相关。
有没有一种简单的方法可以在 URL 中允许这些特殊字符?我已经尝试修改web.config,但无济于事。
我应该手动编码/解码特殊字符吗? 或者是否有这样做的最佳实践,我想避免使用查询字符串。 - 但它可能是一种选择。
应用程序本身是一个c# asp.net webforms 应用程序,它使用路由来生成上面的漂亮 URL。
【问题讨论】:
-
你的页面顶部有
ValidateRequest=false吗? -
我不知道该网站出于什么原因在内部尝试重定向,该重定向正在创建像“localhost/://localhost/myWebsiteName”这样的 URL,这给了我同样的错误。我不知道为什么 ASP.net 管道认为它是一个危险的请求 URL。
标签: c# asp.net url routing webforms