我已经为我的Facebook登录创建了一个自定义端点。此端点从客户端接收Facebook访问令牌。我在我的客户端(Ionic App)中通过‘@I native/facebook/ngx’包获得了这个令牌。
在Laravel Json API中的一个控制器中,我搜索使用Socialite的用户,并插入Facebook访问令牌。获取用户后,我将从中生成一个持有者访问令牌。响应是此承载访问令牌。
在我的客户端中获取这个持有者访问令牌后,我需要以某种方式将它添加到"angular-oauth2-oidc“服务中。我已经有了一个正常的密码流,但是我如何实现一个自定义隐式流,以便我可以将这个给定的持有者访问令牌设置为我的服务?
我已经尝试过tryLogin(),但是这个方法只适用于我的普通登录端点。我现在确实有两个端点:'.../oauth/token‘(正常)和'.../oauth/facebook/token’(facebook)。
public setAccessToken(bearerAccessToken){
//Code to set the given access token in my oAuthService
}我希望它能以某种方式工作。
canActivate() {
return this.oAuthService.hasValidAccessToken() ||
this.router.parseUrl('/landing-page');
}这是我的守卫。如果设置了我的持有者访问令牌,hasValidAccessToken()必须返回true。
我希望在"angular-oauth2-oidc“中的某个地方有一个setAccessToken函数可以使用。
发布于 2019-06-28 16:12:44
我自己找到了解决方案,下面解决了这个问题:this.oAuthStorage.setItem('access_token', bearerAccessToken);
https://stackoverflow.com/questions/56792637
复制相似问题