vue axios删除请求在laravel 7中不起作用

时间:2020-04-30 08:02:48

标签: laravel api vue.js axios

Vue组件

    methods: {
    removeCategory(index) {
        if (confirm('Are you sure ?')) {
            let id = this.categories[index].id;
            console.log("ID="+id);
            if (id > 0) {
                axios.delete('/api/categories/' + id);
            }
            this.categories.splice(index, 1);
        }
    },

路线Api

Route::delete('/categories/{category}', 'CategoryController@destroy');

控制器

    public function destroy(Category $category)
{
    $this->authorize('delete', $category);
    $category->delete();
    return $category;
}

Put请求可以很好地插入和更新数据,但是DELETE请求不能从数据库中删除数据。 谢谢

2 个答案:

答案 0 :(得分:0)

Laravel检查CSRF令牌。 您需要在请求标头中添加X-CSRF-TOKEN

您可以阅读以下文档:https://laravel.com/docs/7.x/csrf#csrf-x-csrf-token

答案 1 :(得分:0)

如果尚未找到答案,请快速修复为:

在您的 Controller 中删除模型绑定。 使用ID抓取特定类别。 授权并删除它。

(无需修改 Component Route