【发布时间】:2019-11-24 14:48:48
【问题描述】:
我遇到一个问题,我不知道它为什么会显示此错误。我有一个通过 ajax 发布的表单。我在视图的头部添加了隐藏字段元标记。当我执行我的 ajax 调用我正在使用 Ajaxsetup 来引入令牌。
这是我视图头部的 html 元标记。
<meta name="csrf-token" content="{{ csrf_token() }}">
我的 ajax 调用是
$('#login_model_submit').on('click', function () {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
let url = window.location.origin + '/login';
let data = {
'email': $('#login_email').val(),
'password': $('#login_password').val(),
'_token': $('meta[name="csrf-token"]').attr('content')
};
$.ajax({
url: url,
type: 'POST',
data: data,
success: function () {
alert('Success')
},
error: function (e) {
alert(e.responseText)
}
});
});
不知道为什么我得到 csrf 令牌不匹配。我已经完成了我在此处的许多问题/答案中看到的内容,但这很简单,不起作用。非常感谢任何帮助。
这是我的请求标头
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Content-Length: 49
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Host: vb.local
Origin: http://vb.local
Referer: http://vb.local/
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
(KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
X-CSRF-TOKEN: YpP9izd705ztdtyqyFTBByLqcNmzoUIyb3i07HlA
X-Requested-With: XMLHttpRequest
【问题讨论】:
-
您是否使用过开发工具来验证请求中确实发送了标头?
-
是的,我有它,但仍然是错误。
-
尝试更改 url 例如:
let url = '/login'
标签: jquery ajax laravel-5.8