jquery - 检查 cookie __RequestVerificationToken 是否存在

标签 jquery asp.net-mvc

我收到一个著名的 asp mvc 错误:

The required anti-forgery cookie "__RequestVerificationToken" is not present.

我仅在将网站部署到 godaddy 服务器时且仅在登录页面上出现此错误。然而,我只需要刷新页面,错误就消失了。

因此,我试图找出如何检查此 cookie 是否存在并运行:

location.reload(true); 

如果cookie不存在,我认为这可以解决问题。

所以我尝试使用:

if(!$.cookie('__RequestVerificationToken')){
    location.reload(true);
}

但是cookie始终是未定义并且上面的代码不断重新加载页面。

我已经检查了几乎所有与此问题相关的问题,但似乎找不到答案。

最佳答案

嗯,$.cookie 不是内置于 jQuery 中的。它需要一个插件。如果您没有该插件,则会返回为 undefined 并且测试 !undefined 始终为真。因此,我假设您在某处找到了该代码,假设它是 jQuery 的一部分,并且没有费心包含实际使其工作的插件。此外,该语法和相关插件已被弃用,取而代之的是 JavaScript Cookie project ,所以使用它而不是旧的 jQuery Cookie 插件。

关于jquery - 检查 cookie __RequestVerificationToken 是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45352020/

相关文章:

jquery - MVC 部分 View 中的命名约定以避免 ID 冲突

c# - 我无法用自定义授权属性装饰整个 Controller

c# - 如何强制注销网站的所有用户?

Jquery插件语法解释?

jquery - ASP.NET AJAX 有什么意义?

javascript - 在 javascript css 属性中使用变量

javascript - 无论窗口大小如何,都保持 div 覆盖相对于背景图像

c# - 从 MVC Controller 将 HTML 渲染为字符串

javascript - 如何使用 jQuery 左右滚动 2 个 div(页面)?

c# - 迭代请求参数的模式