我正在尝试向Laravel API发出删除请求。
我有一个todo-App和一个带有 removeTask 方法的tasks.js,它将任务对象作为参数传递。
removeTask: function(task)
{
this.tasks.$remove(task);
this.$http.delete('/api/tasks', { task, 'method': 'DELETE' });
},
以下是我在chrome-dev-tools中的内容:
这是我的TasksController上的destroy方法:
public function destroy(Request $request, $id)
{
//
return response()->json(Input::all());
}
我到底哪里错了?
提前谢谢。
修改
我有一条资源丰富的路线,如下所示:
Route::get('/', function () {
return view('pages.tasks.index');
});
Route::group(['prefix' => 'api'], function() {
Route::resource('tasks', 'TasksController');
});
答案 0 :(得分:1)
在laravel的routes.php
文件中设置一条路线,如下所示:
Route::delete('api/tasks', 'TasksController@destroy');
答案 1 :(得分:0)
错误出现在使用Vue的 removeTask 方法中:
removeTask: function(task)
{
this.tasks.$remove(task);
this.$http.delete('/api/tasks', { task, 'method': 'DELETE' });
},
应该有这个:
removeTask: function(task)
{
this.tasks.$remove(task);
this.$http.delete('/api/tasks/' + task.id, task);
},
没有传递id,就像我建议的资源路线一样。