我正在创建一个Web应用程序,我需要从Mobile Apps访问API。我已经实现了一些公共API方法,这些方法很好并且工作得很好。
现在,我正在研究受限制的API方法,即更新用户信息等。
我已开始实施OAuth server package lucadegasperi/oauth2-server-laravel
使用GitHub仓库和this tutorial中的文档,所有设置和抛出令牌都没问题。
我可以使用对我的公共API方法oauth/access_token
的POST调用来获取OAuth令牌,这会返回一个访问令牌没问题。
现在,我的问题是:
一旦我拥有访问令牌,我怎么知道它被发给谁以及他们有权访问什么?没有与此令牌关联的user_id。
我可以简单地在表格中创建一个列,并使用Eloquent模型找出以及如何将此令牌与用户相关联?
答案 0 :(得分:1)
好的,所以经过多次搜索源代码和文档后,我放弃了并在此处发布了一个问题。然后我想“再来一次”。我找到了this gem。
在底部(不是在TOC或其他任何地方)是:
use LucaDegasperi\OAuth2Server\Facades\Authorizer;
Authorizer::getResourceOwnerId();
将此配对:
$user = User::find($user_id);
像这样:
Route::get('protected', ['middleware' => 'oauth', function() {
$user_id = Authorizer::getResourceOwnerId();
$user = \App\User::find($user_id);
return $user;
}]);
鲍勃是你的叔叔。我们有谁提出要求。