2014-09-12 79 views
3

具體而言,我想使用Gmail API訪問我自己的郵件只有。有沒有辦法做到這一點沒有OAuth,只是一個API密鑰和/或客戶端ID和祕密?在沒有OAuth的情況下將Google API用於自己的帳戶

使用諸如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 「授權」 頭。我會這樣做,但我想這是不可能的,沒有提出一個網頁。

回答

4

嚴格回答「有沒有辦法做到這一點,而不需要OAuth,只需要一個API密鑰和/或客戶端ID和祕密?沒有。

但是,您可以實現使用OAuth查找的內容。您只需要存儲一個Refresh Token,然後您可以隨時使用它來請求Auth令牌訪問您的Gmail。

爲了獲得刷新令牌,您可以編寫一個簡單的Web應用程序來執行一次性認證,或者按照這裏的步驟How do I authorise an app (web or installed) without user intervention? (canonical ?),它允許您使用Oauth Playground執行整個認證流程。

相關問題