我为我的 Facebook 登录创建了一个自定义端点。此端点从客户端接收 Facebook 访问令牌。我使用“@ionic-native/facebook/ngx”包在我的客户端(Ionic App)中获取了这个令牌。
在 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 函数。