【发布时间】:2019-12-03 01:33:24
【问题描述】:
我有一个 laravel 页面,允许用户保存搜索,但前提是他们已登录。他们可以登录没有问题或保存搜索没有问题,CSRF 令牌被接受。但是,如果用户必须登录然后保存搜索,我会得到“CSRF 令牌不匹配”。错误。
我假设每个帖子或数据库更新都会生成一个新令牌,但不确定。我应该在发布到控制器之后检索新的 CSRF 令牌,然后更新页面上的 CSRF 输入吗?
我已经在我的标题中尝试过这个
<meta name="csrf-token" content="{{ csrf_token() }}">
并在我的表单中使用它
@csrf
然后在我的 ajax 调用中
var token = $('[name=_token]').val();
令牌是在参数中传递的,所以我知道它在那里,但只会在第一个 ajax 调用中起作用
【问题讨论】:
-
嘿@xjx424!你能分享一些你正在使用的代码吗?
-
我已经用一些代码更新了我的问题
-
亲爱的,谢谢!我假设您已阅读 here 关于将令牌添加到所有请求标头的内容?
-
是的,也试过了。它每次都通过数据或标头传递相同的令牌。任何帖子后令牌值是否会发生变化?
-
谢谢,但我已经看过那个帖子了。在过去的 4 个小时里,我可能已经看到了所有与 SO 相关的问题 :)