在laravel

时间:2016-12-19 21:00:13

标签: laravel laravel-5 laravel-5.3 laravel-routing httpverbs

我正在使用Laravel构建基于api的管理控制应用程序而我正在使用 Route:资源而不是常规的GET和POST方法。

刚刚意识到我的托管服务提供商现在不允许PUT和DELETE我现在需要使用POST和GET方法。

这就是我所拥有的

Route::resource('contacts', 'Admin\\ContactInfoController',['only' => ['create', 'store', 'update']]);
    Route::get('claims/statuses', 'Admin\\ClaimsController@statusCodes');
    Route::get('claims/costcenters', 'Admin\\ClaimsDetailsController@getCostCentres');
    Route::get('claims/{id}/details', 'Admin\\ClaimsController@details');
    Route::get('claims/{id}/messages', 'Admin\\ClaimsController@messages');
    Route::resource('claims', 'Admin\\ClaimsController',['only' => ['index','store','update','destroy','edit']]);
    Route::resource('claims/details', 'Admin\\ClaimsDetailsController',['only' => ['store','update','destroy']]);

在将我的路由从PUT和DELETE转换为POST和GET时,最好的方法是什么?

2 个答案:

答案 0 :(得分:1)

我认为您的托管服务提供商不允许放置或删除请求。如果您创建了API,则可能是这种情况,但在其他情况下(您创建了正常页面),您使用POST方法发送表单,并将隐藏字段_method设置为HTTP谓词,因此,如果只有您的提供程序支持POST方法,它将无需工作一个问题。您可以阅读有关此内容的Form method spoofing部分。

答案 1 :(得分:0)

联系您提供的托管服务,以允许提交或删除请求,这是Web开发的一部分,这是非常有限的。