如何避免用户每次都要重新授权Evernote?

时间:2016-04-17 16:49:29

标签: python-2.7 evernote

我正在使用Evernote API构建一个Python Web应用程序。当用户登录时,他们将被重定向到Evernote站点上的页面以授权该应用程序。当他们回来时一切正常(可以看到和编辑笔记等)

现在的挑战是避免每次登录时都必须将用户重定向到Evernote网站。

我在Evernote forums上读到了我需要保存访问令牌和notestore url以实现此目的。我现在在第一次成功授权后将这些保存到用户帐户。

但是如何使用访问令牌和notestore url进行授权?

我在Evernote网站上发现了这个示例代码,它应该实现这一目标,但它是用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网址和访问令牌,您如何使用它们重新授权?

1 个答案:

答案 0 :(得分: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