Laravel处理POST请求作为GET

时间:2016-12-30 07:13:10

标签: php laravel http laravel-5.2 laravel-routing

我在routes.php中写了两条路线

Route::get('/users/portfolio', [
    'as' => 'api.v1.users.portfolio',
    'uses' => 'UsersController@portfolio'
]);

Route::post('/users/portfolio', [
    'as' => 'api.v1.users.portfolio',
    'uses' => 'UsersController@portfolio'
]);

GET Route用于向用户显示所有信息 邮政路线用于在邮件中发送该信息

如果我打电话 POST localhost:8000 / api / v1 / users / portfolio 然后它很好 print_r(request() - > method())的结果是POST

但如果我打电话 POST localhost:8000 / api / v1 / users / portfolio / (注意最后的斜线) 然后Laravel将其作为GET请求处理 print_r(request() - > method())的结果是GET

2 个答案:

答案 0 :(得分:3)

尾部斜杠会产生重定向,从而产生GET。

答案 1 :(得分:0)

请尝试以下代码:

Route::any('/users/portfolio', [
    'as' => 'api.v1.users.portfolio',
    'uses' => 'UsersController@portfolio'
]);

Route::any('/users/portfolio', [
    'as' => 'api.v1.users.portfolio',
    'uses' => 'UsersController@portfolio'
]);