2016-04-17 69 views
0

我正在用Evernote API構建Python web應用程序。當用戶登錄時,他們被重定向到Evernote網站上的一個頁面來授權應用程序。當他們回來一切正常(可以看到和編輯筆記等)如何避免用戶每次都需要重新授權Evernote?

現在的挑戰是避免每次登錄時都要將用戶重定向到Evernote站點。

我讀了Evernote forums我需要保存訪問令牌和不需要的url來實現這一點。我現在將這些保存到第一次成功授權後的用戶帳戶中。

但是,如何使用訪問令牌和不需要url來授權?

我在印象筆記網站上找到了這個示例代碼,它應該可以達到這個目的,但它是用Java編寫的,我似乎無法使它在Python中工作。

// Retrieved during authentication: 
String authToken = ... 
String noteStoreUrl = ... 

String userAgent = myCompanyName + " " + myAppName + "/" + myAppVersion; 

THttpClient noteStoreTrans = new THttpClient(noteStoreUrl); 
userStoreTrans.setCustomHeader("User-Agent", userAgent); 
TBinaryProtocol noteStoreProt = new TBinaryProtocol(noteStoreTrans); 
NoteStore.Client noteStore = new NoteStore.Client(noteStoreProt, noteStoreProt); 

基本上,如果你有從以前的授權notestore URL和訪問令牌,你如何使用它們重新授權?

回答

0

如果您有訪問令牌,您將使用它作爲EvernoteClient類的構造函數參數。

例如:

client = EvernoteClient(token=your_access_token) 
note_store = client.get_note_store() 
notebooks = note_store.listNotebooks(); 
for n in notebooks: 
    print n.name 

有關更多示例,檢查出Python Quick-start Guide

+0

我再次嘗試過這種方式,從來沒有想過它會工作......但這次它做到了!我將訪問令牌保存在數據庫中並使用它,現在我可以跳過認證重定向。謝謝您的幫助! :-)我對Evernote的一些論壇帖子感到非常困惑。 –

相關問題