Node.js 为文件存储管理令牌共享google帐户

Node.js 为文件存储管理令牌共享google帐户,node.js,heroku,google-drive-api,Node.js,Heroku,Google Drive Api,我正在Node.js中创建一个应用程序,由Heroku托管。使用passport.js,我已经用一个google帐户实现了登录身份验证,并与mySQL数据库集成 在部分申请中,我要求申请人上传一组文件。我希望通过GoogleDrive API处理上传。从本质上讲,用户将能够选择文件,然后后端将其上传到单个帐户google drive。注:这将是一个独立于申请人账户的账户 虽然我了解上传和检索文件的过程,但我仍然不确定令牌是如何工作的。通过我的在线研究,我知道: 访问令牌在特定时间后过期 刷新令

我正在Node.js中创建一个应用程序,由Heroku托管。使用passport.js,我已经用一个google帐户实现了登录身份验证,并与mySQL数据库集成

在部分申请中,我要求申请人上传一组文件。我希望通过GoogleDrive API处理上传。从本质上讲,用户将能够选择文件,然后后端将其上传到单个帐户google drive。注:这将是一个独立于申请人账户的账户

虽然我了解上传和检索文件的过程,但我仍然不确定令牌是如何工作的。通过我的在线研究,我知道:

  • 访问令牌在特定时间后过期
  • 刷新令牌不会过期,将存储在数据库中
我的问题是如何在后端管理这些令牌。我当前的计划是使用获取共享帐户下应用程序的访问令牌。然后,每次需要上传或访问文件时,我都会使用刷新令牌获得一个新的访问令牌,然后使用该访问令牌进行API调用

然而,在做了一些实现测试之后,我有一些困惑。我浏览了一遍,然后修改了代码以进行文件上传,而不是文件阅读器。修改后的代码如下:

function fileUpload(auth) {
  var drive = google.drive({version: 'v2'});

  drive.files.insert({
    auth: auth,
    resource: {
      title:'Test',
      mimeType: 'text/plain'
    },
    media: {
      mimeType: 'text/plain',
      body: 'TEST'
    }
  }, function(err, response) {
    if (err) {
      console.log('The API returned an error ' + err);
      return;
    } else {
      console.log('Inserted')
    }
  });
}

据我所知,访问令牌过期后,您将无法再使用它。然而,在访问令牌过期后我运行代码之后,它仍然能够完成该过程。此外,访问令牌也没有改变。因此,我的困惑是如何管理这些访问令牌,特别是如果我需要担心访问令牌过期,或者一旦使用一次,它们是否有效

您确定令牌已过期吗?每次持续60分钟。这个问题与您的问题类似,但我使用Parse.com服务器来管理令牌。您确定令牌已过期吗?每次持续60分钟。这个问题与您的问题类似,但我使用Parse.com服务器来管理令牌。