【问题标题】:Call api resource and return current user调用api资源并返回当前用户
【发布时间】:2020-05-24 23:47:21
【问题描述】:

我想返回单个用户的所有数据,我想为它使用资源。

据我所知,无法从控制器调用此类资源(例如,由于资源 toArray(..) 方法中的 $request 参数)。所以,我必须直接从我的 api.php 文件中调用它。

如果我现在从我的 api.php 调用它,我没有从父函数 (Route::get(..)) 获得任何 $request-parameter,所以我无法识别哪个用户调用了资源函数。我该如何解决这个问题?

顺便说一句,我不想​​使用这样的东西:Route::get('/user/{userId}', ...)

【问题讨论】:

    标签: laravel


    【解决方案1】:

    为了直接从任何函数使用请求,您应该通过在被调用函数中使用请求辅助函数来获取当前请求对象

    $request=request();

    希望这会有所帮助

    【讨论】:

      【解决方案2】:

      您可以通过以下方式获取当前登录的用户:

      public void user(Request $request)
       {
            $user = $request->user();
            return $user;
       }
      

      【讨论】:

        【解决方案3】:

        希望对你可以通过调用该路由直接获取用户数据有所帮助。

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

        【讨论】:

          猜你喜欢
          • 2016-11-27
          • 2021-07-22
          • 2020-06-15
          • 2015-12-19
          • 2015-08-30
          • 2021-10-02
          • 2023-03-03
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多