I'm using asp.net MVC 4.
These are my routes:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}"
);
My current controller responds to the following request correctly:
http://localhost:2020/PrivacyUrls/Details/ct14524
How can I validate urls like these?
http://localhost:2020/PrivacyUrls/Details/*ct14524
http://localhost:2020/PrivacyUrls/Details/&ct14524
which now returns 404.
A potentially dangerous Request.Path value was detected from the client (*).
A potentially dangerous Request.Path value was detected from the client (&).
I thought adding this route, but it didn't help:
routes.MapRoute(
"PivacyUrl/Details",
"PrivacyUrls/Details/{*ctid}",// URL with parameters
new { controller = "PrivacyUrls", action = "Details" }
);
In web.config:
<system.web>
<httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" />
<pages validateRequest="false" />
</system.web>
Blatantly stolen from https://stackoverflow.com/a/6026291/299408