asp.net-mvc – 如何向ASP.NET MVC2控制器发送包含冒号的GET请求
发布时间:2020-12-16 09:57:44 所属栏目:asp.Net 来源:网络整理
导读:这很好用: GET /mvc/Movies/TitleIncludes/Lara%20Croft 当我提交包含冒号的请求时,如下所示: GET /mvc/Movies/TitleIncludes/Lara%20Croft:%20Tomb …它会产生400错误.该错误表明ASP.NET在URL中检测到无效字符. 如果我尝试url-escaping,请求看起来像这样
这很好用:
GET /mvc/Movies/TitleIncludes/Lara%20Croft 当我提交包含冒号的请求时,如下所示: GET /mvc/Movies/TitleIncludes/Lara%20Croft:%20Tomb …它会产生400错误.该错误表明ASP.NET在URL中检测到无效字符. 如果我尝试url-escaping,请求看起来像这样: GET /mvc/Movies/TitleIncludes/Lara%20Croft%3A%20Tomb ……这也给了我一个400错误. 如果我用|替换冒号: GET /mvc/Movies/TitleIncludes/Lara%20Croft|%20Tomb ..这也被认为是非法的,这次有500错误.消息:路径中的非法字符. URL转义为|导致相同的错误. 我真的,真的不想使用querystring参数. 有关: 解决方法
我发现URL编码不起作用,但自定义编码确实如此.
我想ASPNET MVC使用文件系统来进行解析和路由,因为URL中的一个字符在文件系统中是不合法的,会导致500或400错误. 所以我所做的就是用unicode替换冒号 浏览器: function myEscape(s){ return s.replace(':','%C2%A1').trim(); } 在操作中,在使用参数之前调用此转换: private string MyCustomUnescape(string arg) { return arg.Replace("?",":"); } 相同的方法适用于斜杠 – 只需选择一个不同的unicode字符.当然,如果您的字符串参数本身是unicode,那么您将不得不为“编码”表单使用不可打印的字符. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 使用NHibernate,ASP.NET MVC和Dropdown
- asp.net mvc多个连接字符串
- .Net Core技术研究-Span<T>和ValueTuple<T&
- asp.net-mvc – 当前动作是ChildAction吗?
- 使用ASP.NET webAPI上载文件(最大文件大小为10Mb)
- 您认为ASP.Net技能的当前基准是什么?
- Asp.net mvc 知多少(八)
- asp.net-mvc – ASP.NET MVC图像和其他静态内容url
- asp.net – AppendHeader是否与AddHeader完全相同?
- 什么是最好的ASP.NET性能计数器来监视?
推荐文章
站长推荐
- asp.net-mvc – 在Azure中启用自定义错误
- asp.net – 在LINQ-to-SQL中运行映射存储过程方法
- asp.net – AutoMapper:将集合中的项目值从一个
- ASP.NET MVC Model绑定的简单应用
- asp.net – 使用AJAX填充下拉列表
- asp.net-mvc – 使用breeze js不直接与DBContext
- asp.net-mvc – 将SignalR与Azure表存储一起使用
- asp.net-mvc – 如何为模型状态字典生成字段名称
- asp.net – AspNetSession布局渲染器不工作
- asp.net-mvc – EC2上的ASP.net MVC
热点阅读