You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET WebForms下获取Evernote笔记列表的技术咨询

如何基于OAuth Verifier获取Evernote笔记列表

既然你已经拿到了oauth_verifier,但现有SDK不适用你的场景,那咱们可以手动走Evernote的OAuth 1.0a流程+API调用来实现需求,你需要重点关注以下几类信息和步骤:

1. 完成OAuth 1.0a的最后一步:换取Access Token

你现在的状态是拿到了验证器,接下来需要用它和之前拿到的临时oauth_token、oauth_token_secret,加上你的开发者应用密钥(consumer key/secret),去请求Evernote的OAuth access token接口:

  • 接口地址:沙箱环境用https://sandbox.evernote.com/oauth/access,生产环境用https://www.evernote.com/oauth/access
  • 请求方式:POST
  • 必须参数:oauth_verifier、oauth_token、oauth_consumer_key、oauth_nonce(随机字符串)、oauth_timestamp(当前Unix时间戳,秒级)、oauth_signature_method=HMAC-SHA1、oauth_version=1.0,还有最重要的oauth_signature(用HMAC-SHA1算法生成的签名,需要把所有参数、请求URL、HTTP方法一起加密)

生成签名的时候要注意:所有参数需要按字典序排序,URL编码后再拼接,用你的consumer secret和临时token secret作为密钥(格式是{consumer_secret}&{oauth_token_secret})。

2. 掌握Evernote笔记相关的API端点与参数

拿到Access Token后,就可以调用核心API来获取笔记列表了:

  • 先获取笔记本列表(可选,但方便过滤笔记):调用/edam/user/notebooks,参数带上auth=你的Access Token,返回所有笔记本的GUID和名称
  • 获取笔记列表:调用/edam/note/list,必须参数包括auth、userId(可以从Access Token返回的内容里拿到,或者调用/edam/user/get获取用户信息),可选参数有notebookGuid(指定某本笔记本)、offset(分页偏移)、maxNotes(单次返回最大笔记数,最多100)

3. 理解EDAM数据模型结构

Evernote的所有数据都是基于EDAM(Evernote Data Access Model)定义的,你需要了解几个核心对象的结构:

  • NoteMetadata:笔记的元数据,包含标题、GUID、创建时间、更新时间、笔记本GUID等,这是列表接口返回的主要内容
  • Notebook:笔记本对象,用来分组笔记
  • 接口默认返回XML格式,你也可以在请求头里指定Accept: application/json来获取JSON响应,方便解析

4. 处理请求的格式与编码细节

  • 所有请求参数都需要做URL编码(遵循RFC 3986标准,空格转%20而非+)
  • 签名生成过程中,参数的排序、编码必须严格符合OAuth 1.0a规范,否则会返回签名错误
  • 确保请求头里的Content-Type和你发送的请求体格式匹配(比如POST请求用XML的话,设为application/xml)

简单流程示例

  1. 换取Access Token的POST请求参数示例(已简化,签名需自行生成):
oauth_consumer_key=YOUR_CONSUMER_KEY
oauth_token=YOUR_TEMP_TOKEN
oauth_verifier=YOUR_VERIFIER_CODE
oauth_nonce=abc123
oauth_timestamp=1699999999
oauth_signature_method=HMAC-SHA1
oauth_version=1.0
oauth_signature=GENERATED_SIGNATURE
  1. 获取笔记列表的GET请求示例:
https://sandbox.evernote.com/edam/note/list?auth=YOUR_ACCESS_TOKEN&userId=12345&maxNotes=50

最后提醒:一定要区分沙箱和生产环境,沙箱的应用密钥和数据都是独立的,测试没问题再切换到生产环境。

内容的提问来源于stack exchange,提问作者nudrick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:26:51