使用节点.js Gmail API 发送现有草稿
Sending existing draft with node.js Gmail API
我正在尝试使用users.drafts.send
API发送已经存在的Gmail草稿。尽管进行了大量搜索,但我无法找到很多关于请求实际应该是什么样子的具体信息。我尝试过的请求是:
gmail.users.drafts.send( { 'userId': user, 'resource': { 'id': msg_id } }, callback );
这会导致"未找到"错误。
基于一些搜索,似乎暗示草稿资源需要位于名为 draft
的子对象中,我尝试:
gmail.users.drafts.send( { 'userId': user, 'resource': { 'draft': { 'id': msg_id } } }, callback );
这会导致"无效草稿"错误。我想这是一个更好的错误,但我仍然无法让它实际发送。
我已经确认消息 ID 和用户 ID 字符串是正确的,并且没有任何身份验证问题。(其他 API 调用工作正常。
你的第一个例子是正确的,但我认为你错过了一些东西。
我有草稿。我将使用 API 资源管理器列出它:
请求
GET https://www.googleapis.com/gmail/v1/users/me/drafts?access_token={ACCESS_TOKEN}
响应
{
"drafts": [
{
"id": "1527269226973690353",
"message": {
"id": "1531f3452626f9f1",
"threadId": "1531f3452626f9f1"
}
}
],
"resultSizeEstimate": 1
}
如您所见,草稿有两个 ID。一个常规messageId
在执行草稿特定操作时不起作用,id
是您应该使用draftId
。
在所有互联网上搜索后,我找到了一个解决方案:
gmail.users.drafts.send({
auth: access_token,
userId: 'me',
resource: {
id: draft_id,
message:{
raw: base64encodedmessage
}
}
}, callback);
即使您想发送带有新正文的草稿,这也有效
相关文章:
- 为自托管解析服务器使用节点解析API
- 如何在javascript DOM api中获取具有给定条件的子节点
- 跨节点服务器上的多个 API 请求维护数据
- 使用 API 注册创建节点.js API 框架
- 是否可以在 Polymer 中的
节点上使用自定义属性以获得漂亮的 API - 回调返回响应,但当在API中发送时,响应在节点JS中显示为空白
- 有没有什么好的节点模块可以连接google shortener API来缩短长URL
- 如何从节点中的api promise返回对象
- 节点 Webkit 文本到语音 API 不起作用
- 创建服务器并在节点.js服务器 (EdgeJS) 中引用 API
- 节点上的条带 API .js错误:没有这样的客户:
- 股票市场API节点.JS
- 客户端 js 获取节点.js API 调用
- 您无权访问此页面 Odesk api 节点.js
- 使用节点.js Gmail API 发送现有草稿
- 使用护照-jwt 对节点 API 进行身份验证
- 连接到 Web 音频 API 增益节点的滑块在我拖动时弹出并单击.当我拖动时,音量没有平滑的斜坡
- Google 购物 API 节点.js产品插入返回“插入请求必须指定产品”错误
- 为一组Web Audio API节点创建一个简单的构造函数
- 如何在向第三方 API 节点发出多个请求后发送响应.js.