在没有OAuth的情况下将Google API用于自己的帐户

时间:2014-09-12 20:28:34

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

具体来说,我想使用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“授权”标头。我会这样做,但我想如果不提供网页就不可能。

1 个答案:

答案 0 :(得分:5)

严格回答&#34;有没有办法在没有OAuth和API密钥和/或客户端ID和秘密的情况下执行此操作?&#34;不是。

但是,您可以使用OAuth实现所需的功能。您只需存储一个刷新令牌,然后您可以随时使用它来请求Auth令牌访问您的Gmail。

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