ASP.NET MVC 网址包含“/”斜线
笔者碰到一个状况是,URL带入的参数是可能有“/”斜线的(使用者输入)像是以下
1.运行正常
http://localhost:45405/Home/Product?name=HTC/M8/手机套
2.运行正常
http://localhost:45405/Home/Product?name=‘抗涨’白人牙膏_特大号
到目前为止都还没问题,但我们为了让URL好看以及优化SEO,我们会做URL Rewriting像是以下
1: //商品
2: routes.MapRoute(
3: name: "Product",
4: url: "商品/{name}",
5: defaults: new { controller = "Home", action = "Product", name = UrlParameter.Optional });
1.错误
http://localhost:45405/商品/HTC/M8/手机套
2.运行正常
http://localhost:45405/商品/‘抗涨’白人牙膏_特大号
这时候我们在路由name前方加个*就可以了。
1: //商品
2: routes.MapRoute(
3: name: "Product",
4: url: "商品/{*name}",
5: defaults: new { controller = "Home", action = "Product", name = UrlParameter.Optional });
如有错误还请各位先进前辈们不吝啬的指教,谢谢。
?
原文:大专栏 [ASP.NET MVC] URL网址路由包含“/”斜线
原文地址:https://www.cnblogs.com/chinatrump/p/11516519.html
时间: 2024-10-12 22:56:34