asp.net-mvc – 并不总是创建__RequestVerificationToken
我们有一个包含多种形式的页面.每个都有自己的@
Html.AntiForgeryToken().在我的本地机器上一切都很棒.
我们部署到Azure(PAAS),但没有在每个请求上创建__RequestVerificationToken.有时它在那里,有时我得到所需的防伪cookie不存在,很少我得到令牌不匹配错误. 在这一点上我完全无能为力.我无法弄清楚我们的代码或Azure环境是否有问题?这些形式没有ajax. 我们添加了< machineKey>我们的web.config部分.没有缓存.有时它从第一次出现在新设备上. 解决方法
我相信你的问题来自于在一个页面上使用不同的防伪标记的多个表单.
当请求页面时,您会在表单隐藏字段中获得两个不同的标记,但cookie中只有一个标记. 表单POST包含导致错误的不匹配标记. 如果页面只包含一个表单,请尝试AFT如何为您服务.如果它工作正常那么我的假设是正确的. This answer包含具有多种形式的页面的可能解决方案,但是它具有一些安全缺陷,如here所述. 我不确定为什么一切都在你的localhost上运行正常. 如果我的回答仍无法帮助您,请提供以下数据以供进一步分析: >返回HTTP标头的原始页面请求,并形成防伪标记.>使用已发送的HTTP标头表单POST请求. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 从ASP.NET切换到面包和黄油HTML / jQuery的优势
- asp.net-web-api – Web API ModelBinders – 如何以不同方
- query-string – Asp.net 5 mvc 6获取要查看的查询字符串
- ASP.NET MVC3 Razor – 如何有条件地退出或结束或返回或中断
- asp.net-mvc – 具有DateTime的MVC 3编辑器模板
- ASP.Net数据库配置
- asp.net-mvc – 无法让defaultRedirect工作
- asp.net – 为什么Response.BufferOutput = False,不工作?
- 使用ASP.NET/SQL Server丢失会话状态
- asp.net – 为什么visual studio给我类型没有为我的App_Cod
- IIS 7/ASP.Net管道如何工作?
- asp.net – Microsoft EDGE – 访问此资源所需的
- ASP.NET Core的JWT的实现(自定义策略形式验证)
- asp.net-mvc – 如何为ASP.NET MVC编写自己的Vie
- ASP.NET MVC – 如何实现可重用的用户控件和维护
- asp.net-mvc – 调用SaveChanges()时从更新中排除
- asp.net-mvc – 旧版PHP URL不会在MVC中调用自定
- asp.net – “HttpContext.Current”属性和相关事
- asp.net – 如何从.aspx页面检索查询字符串值并将
- asp.net-mvc – 在MVC命令,优先级和功能问题中授