【问题标题】:Using Google API's for one's own account without OAuth在没有 OAuth 的情况下为自己的帐户使用 Google API
【发布时间】:2014-11-07 02:35:16
【问题描述】:

具体来说,我想使用 Gmail API 访问我自己的邮件。有没有办法在没有 OAuth 的情况下做到这一点,只需一个 API 密钥和/或客户端 ID 和密码?

使用 API 密钥,例如:

require('googleapis').gmail('v1').users.messages.list({ auth: '<KEY>', userId: '<EMAIL>') });

产生以下错误:

{ errors: 
   [ { domain: 'global',
       reason: 'required',
       message: 'Login Required',
       locationType: 'header',
       location: 'Authorization' } ],
  code: 401,
  message: 'Login Required' }

我想该消息意味着他们想要一个有效的 OAuth“授权”标头。我会这样做,但我想如果不展示网页是不可能的。

【问题讨论】:

    标签: node.js oauth-2.0 google-api google-oauth


    【解决方案1】:

    对“有没有办法在没有 OAuth 的情况下仅使用 API 密钥和/或客户端 ID 和密码来执行此操作?”的严格回答?没有。

    但是,您可以使用 OAuth 实现您想要的。您只需要存储一个 Refresh Token,然后您可以随时使用它来请求 Auth Token 来访问您的 gmail。

    为了获取刷新令牌,您可以编写一个简单的 Web 应用程序来执行一次性身份验证,或者按照此处的步骤 How do I authorise an app (web or installed) without user intervention? (canonical ?),它允许您使用 Oauth Playground 执行整个身份验证流程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多