如何判断刷新了哪个访问令牌

How to tell which access token was refreshed

使用以下 event,我的后端会在刷新访问令牌时收到通知。

oauth2client.on('tokens', (tokens) => {
  if (tokens.refresh_token) {
    // store the refresh_token in my database!
    console.log(tokens.refresh_token);
  }
  console.log(tokens.access_token);
});

但是有没有办法知道新访问令牌的前身?我在数据库中存储了多对访问令牌和刷新令牌(多个users/accounts),它们都用于并行获取数据。

如何使用更新的访问令牌更新存储在我的数据库中的过期访问令牌?当然,我可以继续使用旧的访问令牌并且从不更新它,因为图书馆能够在每次请求时获得一个新的访问令牌,但这会产生太多不必要的请求。

我已经弄明白了。 oauth2Client 对象包含 credentials 属性,后者具有旧的 access_token。所以我只是这样检查:

if (oauth2Client.credentials.access_token) {
    // update it in DB
}