【发布时间】:2022-01-26 05:35:08
【问题描述】:
我在发送 AJAX 请求时收到 405(不允许的方法)错误。我一直在努力寻找解决方案,但仍然收到同样的错误。
我已经在标题部分添加了这个:
<meta name="csrf-token" content="{{ csrf_token() }}">
这是 AJAX 代码:
function AjaxCall() {
var token = $('meta[name="csrf-token"]').attr('content');
$.ajax({
url: 'insertNum',
type: 'POST',
dataType: 'json',
header: {
'X-CSRF-TOKEN': token
},
data: {
_token: token,
_method: "PUT",
},
success: function() {
console.log('success');
}
});
}
Laravel 代码:
try {
$lastNum = DB::table('no_antrian')->select('antrian')->first();
if (!is_null($lastNum))
{
$data = DB::table('no_antrian')->update(['antrian' => $lastNum + 1]);
}
return response()->json(['success' => 'Sukses']);
}
catch(\Exception $e) {
return response()->json(['error' => 'failed']);
}
路线:
Route::post('antrian/insertNum', [AntrianController::class, 'getQueueNum']);
【问题讨论】:
-
该错误表示
insertNum端点未配置为接受 POST 请求。你需要检查你的服务器端逻辑来纠正它 -
这里是我的服务器端逻辑
-
请点击问题下方的
edit并将其添加到问题中。 cmets 中的代码几乎不可读 -
也许您需要将
type: 'POST'更改为type: 'PUT', -
@Dmitry 还是同样的错误
标签: javascript php jquery ajax laravel