调用api资源并返回当前用户
Posted
技术标签:
【中文标题】调用api资源并返回当前用户【英文标题】:Call api resource and return current user 【发布时间】:2020-05-24 23:47:21 【问题描述】:我想返回单个用户的所有数据,我想为它使用资源。
据我所知,无法从控制器调用此类资源(例如,由于资源 toArray(..) 方法中的 $request 参数)。所以,我必须直接从我的 api.php 文件中调用它。
如果我现在从我的 api.php 调用它,我没有从父函数 (Route::get(..)
) 获得任何 $request-parameter,所以我无法识别哪个用户调用了资源函数。我该如何解决这个问题?
顺便说一句,我不想使用这样的东西:Route::get('/user/userId', ...)
【问题讨论】:
【参考方案1】:为了直接从任何函数使用请求,您应该通过在被调用函数中使用请求辅助函数来获取当前请求对象
$request=request();
希望这会有所帮助
【讨论】:
【参考方案2】:您可以通过以下方式获取当前登录的用户:
public void user(Request $request)
$user = $request->user();
return $user;
【讨论】:
【参考方案3】:希望对你可以通过调用该路由直接获取用户数据有所帮助。
Route::get('user', function (Request $request)
return $request->user();
);
【讨论】:
以上是关于调用api资源并返回当前用户的主要内容,如果未能解决你的问题,请参考以下文章
FirebaseAuth当前用户在调用注销后没有返回null?
使用 Django Rest Framework 返回当前用户