8

我正在使用 asp.net MVC 4。

这些是我的路线:

        routes.MapRoute(
         name: "Default",
         url: "{controller}/{action}/{id}"
         );

我当前的控制器正确响应了以下请求:

http://localhost:2020/PrivacyUrls/Details/ct14524

我怎样才能验证这样的网址?

http://localhost:2020/PrivacyUrls/Details/*ct14524

http://localhost:2020/PrivacyUrls/Details/&ct14524

现在返回 404。

检测到来自客户端 (*) 的潜在危险 Request.Path 值。

从客户端 (&) 检测到潜在危险的 Request.Path 值。

我想添加这条路线,但它没有帮助:

       routes.MapRoute(
         "PivacyUrl/Details",
         "PrivacyUrls/Details/{*ctid}",// URL with parameters 
         new { controller = "PrivacyUrls", action = "Details" }
         );
4

2 回答 2

9

在 web.config 中:

<system.web>
    <httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" />
    <pages validateRequest="false" />
</system.web>

从https://stackoverflow.com/a/6026291/299408公然窃取

于 2012-12-23T08:32:26.933 回答
0

答案对我不起作用。我不得不使用:

[ValidateInput(false)]
public ActionResult Index...

希望这对其他人有帮助。

于 2017-06-18T21:19:32.720 回答