【问题标题】:How to create a new token.json file using gmail api?如何使用 gmail api 创建一个新的 token.json 文件?
【发布时间】:2021-07-21 13:41:56
【问题描述】:

我正在研究 Gmail API。我有一个 token.json 文件,其中有一个访问令牌和刷新令牌。但是这些值是有期限的。 当它过期时,我需要运行该应用程序,他们会为我提供一个链接,需要我的 Gmail 帐户的许可。在获得许可后,他们将提供一个密钥,我们必须将其放置在终端中以获取新令牌。但是如何在不手动执行此操作的情况下创建此新令牌文件? 有没有办法动态创建这个 token.json 文件?

【问题讨论】:

    标签: node.js gmail-api access-token


    【解决方案1】:

    我了解到您已经运行了 Gmail API 的 quickstart 示例,并且您想创建一个新的 token.json 而无需等待到期时间。为了实现这一点,您可以通过以下方式修改函数authorize

    function authorize(credentials, callback) {
      const {client_secret, client_id, redirect_uris} = credentials.installed;
      const oAuth2Client = new google.auth.OAuth2(
          client_id, client_secret, redirect_uris[0]);
    
      return getNewToken(oAuth2Client, callback);
    
    }
    

    更新

    token.json 将过期。我知道您想在每次运行中生成一个新的。如果您希望它不会过期,我建议您阅读Quickstartnotes

    此示例中的授权流程是为命令行应用程序设计的。有关如何在其他上下文中执行授权的信息,请参阅Authorizing and Authenticating。图书馆自述文件的部分。

    您可以在此处找到满足您要求的不同方式来验证 Google API。我建议你阅读OAuth2Service account credentials

    【讨论】:

    • 好的,使用这个函数token.json文件不会过期吗?
    • 通过修改授权函数,token.json 文件仍然过期,当我运行我的应用程序时,我得到了一个新令牌的链接,我必须获得 Gmail 的许可。
    • 我已经更新了我的答案,看看对你有没有帮助
    猜你喜欢
    • 1970-01-01
    • 2018-08-04
    • 1970-01-01
    • 2021-10-14
    • 2023-03-09
    • 1970-01-01
    • 2011-09-24
    • 2020-11-09
    相关资源
    最近更新 更多