我的路线定义如下:

Route::resource('api/invoice', 'InvoiceController');

在我的控制器中,我有一个function destroy($id)
当用DELETE作为参数向/api/invoice发送id: 2请求时,我会收到405错误消息。
我尝试从postman和javascript代码直接访问此路由,但没有成功…
有什么想法吗?

最佳答案

您说的I get a 405 error是因为HTTP Method错误,在您的Resource Controller中有destroy方法,在这种情况下,可以使用DELETE请求访问此方法。因此,请确保为此发送DELETE请求。
您可以在终端/命令提示符下运行以下命令:

php artisan routes

它将输出带有其名称和URL的路由,因此找到该路由并检查请求方法,然后URL访问该方法。查看HTTP Error 405 Method not allowed了解更多信息。如果使用JavaScript/AJAX调用destroy方法,则,check this answer

10-08 15:22