我的路线定义如下:
Route::resource('api/invoice', 'InvoiceController');
在我的控制器中,我有function destroy($id)
以DELETE
作为参数向/api/invoice
发送id: 2
请求时,我收到405错误消息。
我尝试直接从邮递员和javascript代码访问此路由,但没有成功......
有什么想法吗?
答案 0 :(得分:2)
您说I get a 405 error
这是因为HTTP Method
错误,在Resource Controller
中您拥有destroy
方法,在这种情况下,可以使用{{{{}}访问此方法1}}请求。因此,请确保您发送DELETE
请求。
您可以从终端/命令提示符运行以下命令:
DELETE
它将输出带有名称和php artisan routes
的路由,因此找到路由并检查请求方法,并URL
访问该方法。有关详细信息,请查看HTTP Error 405 Method not allowed。如果您使用URL
来调用JavaScript/AJAX
方法,那么check this answer。
答案 1 :(得分:0)
返回405错误,因为请求URL与DELETE URI不匹配:
预期销毁URI:DELETE api / invoice / {invoice} 使用销毁URI:DELETE api / invoice?id = 1
就这么简单......