Ajax 如何删除laravel 5.7中的用户?

Ajax 如何删除laravel 5.7中的用户?,ajax,laravel,Ajax,Laravel,我正在将我的应用程序从laravel 4.2迁移到5.7。 我有以下逻辑来删除用户: 此操作在单击时触发 $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }) $.ajax({ type: "DELETE", url: "{{ URL::to('administrator/admin-delete') }}"+"/"+id })

我正在将我的应用程序从laravel 4.2迁移到5.7。 我有以下逻辑来删除用户: 此操作在单击时触发

$.ajaxSetup({
    headers: {
    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
})

$.ajax({
    type: "DELETE",
    url: "{{ URL::to('administrator/admin-delete') }}"+"/"+id
});
在我的路线文件中:

Route::delete('admin-delete', 'UsersController@removeAdminDelete');
在我的控制器中:

public function removeAdminDelete($id)
{
    $user = Admin::find($id);
    File::delete($user->photo);
    $user->delete();
    Session::flash('successDelete', "ok");
    if(Auth::user()->id == $id){
        Auth::user()->logout();
        return Redirect::to("administrator");
    }else{
        return Redirect::back();
    }
}
当我尝试删除用户时,我在控制台中遇到以下错误:

删除我的url 419(未知状态)


编辑后我得到404错误

Laravel中的419错误表示您没有为
csrf
提供令牌

如中所示,您可以在页面头部添加一个
meta
标记,标记位于:

<meta name="csrf-token" content="{{ csrf_token() }}">
NB确保在拉入jQuery之后、发出ajax请求之前添加上述代码


此外,您应该为您的路线使用
delete
而不是
resource

改变

Route::resource('admin-delete', 'UsersController@removeAdminDelete');


Laravel中的419错误表示您没有为
csrf
提供令牌

如中所示,您可以在页面头部添加一个
meta
标记,标记位于:

<meta name="csrf-token" content="{{ csrf_token() }}">
NB确保在拉入jQuery之后、发出ajax请求之前添加上述代码


此外,您应该为您的路线使用
delete
而不是
resource

改变

Route::resource('admin-delete', 'UsersController@removeAdminDelete');


似乎与csrf令牌有关。尝试在ajax调用中添加csrf令牌,如下所示:

<meta name="csrf-token" id="csrftoken" content="{{ csrf_token() }}">

似乎与csrf令牌有关。尝试在ajax调用中添加csrf令牌,如下所示:

<meta name="csrf-token" id="csrftoken" content="{{ csrf_token() }}">

在结束表单标记之前添加如下内容

<form action='' method='post'>
......
@csrf
</form>

......
@csrf

在结束表单标记之前添加如下内容

<form action='' method='post'>
......
@csrf
</form>

......
@csrf

我已经在主布局中放置了元标记。我应该如何添加ajax设置?只需在$.ajax({…})之前添加$.ajaxSetup({…})。我已经在主布局中放置了元标记。我应该如何添加ajax设置?只需在$.ajax({…})之前添加$.ajaxSetup({…})我正在编辑我的问题以显示我所做的修改apllied@YoussefBoudaya我错过了路线的
id
参数。我已经更新了我的答案(特别是
Route::delete(…)
bit)。是的,这就是导致问题的原因,添加ajaxsetup也解决了问题it@YoussefBoudaya如果这已经回答了您的问题,请您将其标记为已接受:)谢谢。我正在编辑我的问题以显示我所做的修改apllied@YoussefBoudaya我错过了路线的
id
参数。我已经更新了我的答案(特别是
Route::delete(…)
bit)。是的,这就是导致问题的原因,添加ajaxsetup也解决了问题it@YoussefBoudaya如果这已经回答了您的问题,请您将其标记为已接受:)谢谢。