【问题标题】:Laravel route group won't return data in APILaravel 路由组不会在 API 中返回数据
【发布时间】:2020-01-04 04:38:08
【问题描述】:

如果我使用 laravel 默认的 api 路由来获取我登录的用户信息,它可以正常工作:

代码

Route::middleware('auth:api')->get('/auth/user', function (Request $request) {
    return $request->user();
});

但是如果我将它移动到我的控制器并将路由放在组下它不会

代码

Route::group(['prefix' => 'auth', 'middleware' => ['auth:api', 'cors']], function(){
    Route::get('/user', 'API\AuthController@user');
    Route::post('/logout', 'API\AuthController@logout');
});

控制器

namespace App\Http\Controllers\API;
....
class AuthController extends Controller
{
    public function user(Request $request)
    {
      $user = $request->user();
      return response()->json($user);
    }
}

这是为什么呢?

【问题讨论】:

  • @DevsiOdedra 抱歉,但我无法理解,我的路由没有问题我知道我应该调用我当前的 api,如 api/auth/user 我的问题是数据从控制器返回为 null .我什至把我的路线从Route::get('/auth/user', 'API\AuthController@user')->middleware(['auth:api', 'cors']); 这样的小组中拿出来,仍然是同样的问题。

标签: php laravel


【解决方案1】:

已解决

我从组中取出我的路由,并将我的身份验证路由移到 api.php 文件的顶部,现在它工作正常。

最终路线:

Route::get('auth/user', 'API\AuthController@user')->middleware(['auth:api', 'cors']);

希望对他人有所帮助。

【讨论】:

    猜你喜欢
    • 2018-04-10
    • 2019-04-02
    • 2018-02-11
    • 1970-01-01
    • 2022-06-29
    • 1970-01-01
    • 2021-09-21
    • 2019-07-27
    • 2018-10-01
    相关资源
    最近更新 更多