我正在请求 POST
:
路线:
Route::post('/register','CommonController@postRegister')->name('register');
CSRF 元标记:
<meta name="csrf-token" content="{{ csrf_token() }}">
$("#submitSalonForm").click(function(e) {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
url: "/register",
type: "post",
data: new FormData($('form')[1]),
cache: false,
contentType: false,
processData: false,
success:function(response) {
return alert('Form 2 submitted');
}
});
});
异常(exception)情况:
异常有时出现,有时代码运行顺利,我不知道我在这里错过了什么。
最佳答案
将ajax方法从post改成get
<input type="hidden" name="_token" id="token" value="{{ csrf_token() }}">
Ajx 调用:
let formData = $('form').serializeArray();
$.ajax({
url: "/register",
type: "POST",
data: {formData, "_token": $('#token').val()},
cache: false,
datatype: 'JSON',
processData: false,
success: function (response) {
console.log(response);
},
error: function (response) {
console.log(response);
}
});
你的路线是get
Route::get('/register','CommonController@showRegister')->name('register');
Ajax 调用发出 post 请求,laravel sqwaks 出现 http 异常。
编辑: Laravel 419 post 错误通常与 api.php 和 token 授权有关
因此尝试像上面那样在 ajax 正文中包含 token 。
关于php - 拉维尔 5.5 : 419 unknown status with AJAX,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48680637/