你好,我在 Angular8 应用程序中使用版本为 2.2.1
的 angularx-social-login
。由于 Google 授权令牌在 1 小时后过期,所以我必须调用刷新令牌的方法。我已经查阅了许多网站,但没有找到解决方案。我已经安装并在应用程序模块中声明了它,现在在登录组件中使用它来获取从 Google 登录按钮点击中获取的授权令牌、电子邮件地址和 ID。但我不知道如何在附近调用刷新方法以处理过期时间。请帮忙。
HTML:
<button type="submit" class="btn btn-primary btn-block" (click)="signInWithGoogle()">Sign in with Google</button>
Ts:
public signInWithGoogle(): void {
let socialUser = this.oauthService.signIn(GoogleLoginProvider.PROVIDER_ID).then((userData) => {
if(userData.idToken){
} else {
alert('danger')
}
});
}
app.module.ts:
import { SocialLoginModule, AuthServiceConfig } from "angularx-social-login";
import { GoogleLoginProvider } from "angularx-social-login";
imports: [
SocialLoginModule
],
providers: [
{
provide: AuthServiceConfig,
useFactory: provideConfig
}],
let config = new AuthServiceConfig([
{
id: GoogleLoginProvider.PROVIDER_ID,
provider: new GoogleLoginProvider("1051927480520-u87cv859uap5e6t4r5f52mk96a8a6nhe.apps.googleusercontent.com")
},
]);
export function provideConfig() {
return config;
}
通过演示,我能够获取我选择的 Gmail 帐户的详细信息,但令牌将在一小时内过期,因此我需要在其过期之前获取刷新令牌。请帮忙。