Azure active directory microsoft graph client的客户端实例是否刷新令牌本身?

Azure active directory microsoft graph client的客户端实例是否刷新令牌本身?,azure-active-directory,microsoft-graph-api,microsoft-graph-sdks,Azure Active Directory,Microsoft Graph Api,Microsoft Graph Sdks,我使用adal节点包中的acquireTokenWithClientCredentials函数来声明访问令牌 之后,我使用@microsoft/microsoft-graph-client包创建一个使用graph-API的客户端实例 private client: Client; async getClient(): Promise<Client> { if (!this.client) { const accessToken: string = /* ge

我使用adal节点包中的
acquireTokenWithClientCredentials
函数来声明访问令牌

之后,我使用@microsoft/microsoft-graph-client包创建一个使用graph-API的客户端实例

private client: Client;

async getClient(): Promise<Client> {
    if (!this.client) {
        const accessToken: string = /* get access token from adal-node */;

        this.client = Client.init({
            authProvider: (done) => {
                done(null, accessToken);
            },
        });
    }

    return this.client;
}
私人客户端:客户端;
异步getClient():承诺{
如果(!this.client){
const accessToken:string=/*从adal节点获取访问令牌*/;
this.client=client.init({
authProvider:(完成)=>{
完成(空,accessToken);
},
});
}
将此文件退还给客户;
}
客户端本身仅附带
api
函数。我想知道客户端是否负责访问令牌到期,或者我是否必须负责


因此,在打电话之前,我可以执行
token.expiresOn
检查令牌是否已过期。如果为true,我可以创建一个新的客户端实例。但是我想知道是必须还是只需初始化客户端一次,一切都会“永远”正常。

没有必要自己处理访问令牌过期问题

每次需要使用访问令牌时,只需调用
acquireTokenWithClientCredentials

如果令牌尚未过期,它仍将返回旧令牌


如果过期,它将获得一个新的。没有必要自己处理访问令牌过期

每次需要使用访问令牌时,只需调用
acquireTokenWithClientCredentials

如果令牌尚未过期,它仍将返回旧令牌


如果过期,它将得到一个新的。

谢谢您的回复。因此,客户端将在后台执行一些魔术,刷新令牌?@Question3r。确切地说,它不会刷新令牌,而是获取一个新令牌。它们是应用令牌,不需要用户在线。只要在第一个令牌过期后再次运行相同的请求,您就会得到一个新的令牌。谢谢您的回复。因此,客户端将在后台执行一些魔术,刷新令牌?@Question3r。确切地说,它不会刷新令牌,而是获取一个新令牌。它们是应用令牌,不需要用户在线。只要在第一个令牌过期后再次运行相同的请求,您就会得到一个新的令牌。