asp.net-mvc – ASP.NET MVC:奇怪的POST行为
ASP.NET MVC 2应用程序
我的控制器上有两个动作(Toons): > [GET]清单 应用程序正在IIS7集成模式下运行,因此/ Toons / List工作正常.但是当我执行POST(内部重定向到/ Toons / List)时,它会重定向(使用302 Object Moved)返回/ Toons / Add. 如果我使用.aspx hack(在IIS6 / IIS7经典模式下工作),问题就会消失. 但是如果没有.aspx – GET工作正常,但POST会将我重定向到自己,但使用GET. 我错过了什么? 我正在使用webhost4life.com托管,他们确实已经将IIS7更改为集成模式. 编辑:代码使用UltiDev Cassini服务器按预期工作. 编辑:事实证明,这是一个trash-in-URL问题.如果最后没有斜杠,IIS7会以某种方式正确路由请求. EDET:行为说明 根据HTTP规范,浏览器必须使用相同的方法(在这种情况下为POST)重定向请求,而是处理302,就好像它是303并发出对新URL的GET请求. 这是不正确的,但大多数浏览器的已知行为. 解决方案是使用.aspx-hack使IIS明确地将请求映射到ASP.NET处理程序,或者使用ASP.NET处理程序将IIS配置为处理虚拟目录中的所有内容. 问:有什么更好的方法来处理这个问题? 解决方法
您可以控制代码.
更改所有发布没有尾部斜杠的帖子的页面,以发布到正确的页面. 如果它的第三方客户,而不是返回异常,他们应该修复错误. 这是预期的行为,而不是你的工作来恢复可能发生的一切.但你应该给出好的提示(例如异常消息,而不是奇怪的错误或重定向.) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 在空项目中缺少类型Mono.Web.Util.RoleMana
- asp.net-mvc – MVC DB首先修复显示名称
- asp.net-mvc – 在asp.net mvc中的视图中设置页面标题,元信
- asp.net – IIS Express似乎不会挑选对applicationhost.con
- asp.net – 如何解决找不到ContentPlaceHolder错误?
- Asp.Net Core 空白模板搭建Mvc架构
- asp.net-mvc-3 – 无法解析属性:User.Full_Name of:Harro
- asp.net – NHibernate继承类但不需要持久化
- asp.net-mvc – 如何将asp.net mvc视图渲染为angular 2?
- asp.net – 无效的安全证书和域名
- asp.net文件上传示例分享
- asp.net – 在离开Gridview页面后维护GridView当
- asp.net-mvc – 在Web API 2中使用MVC 5 Attribu
- asp.net – PipeLine模式和池标识是否会影响使用
- 深蓝词库转换1.9发布——支持英库拼音
- asp.net-mvc – Asp.net MVC TextArea
- asp.net-mvc – 在ASP.NEt MVC 3中传递Html.Begi
- asp.net-core – aspnet核心应用程序中的Autofac
- 我的团队成员不支持使用asp.net中提供的验证控件
- asp.net-web-api – Ajax Post:405方法不允许