【问题标题】:Unable to create Draft using JavaScript GMAIL API无法使用 JavaScript GMAIL API 创建草稿
【发布时间】:2015-04-30 05:30:03
【问题描述】:

这个问题已经问了好几次了,但没有一个答案能解决我的问题。

我正在尝试使用 JavaScript 中的 Gmail API 保存草稿。但我收到以下错误。

 "message": "Missing draft message"

我知道原因是我无法以 RCF 2822 格式正确编码我的论点,尽管我已经采取了所有必要的措施。以下是我的代码:

        gapi.client.load('gmail', 'v1', function() {
          var request = gapi.client.gmail.users.drafts.create({
            'userId': "me",
            'draft': {
              'message': {
                'raw': btoa("From: me\r\nTo:" + "hello@person.com" + "\r\nSubject:"+ "subject" + "\r\n\r\n" + "message")
              }
            }
          });
          request.execute(function(data){
            console.log(data)
          });
        });

我已使用 btoa 正确转换了草稿电子邮件,但看不到我缺少什么。

SC 上的一些答案与 Ruby 有关。几乎所有解决方案都不适用于我的场景。我尝试将简单的字符串作为草稿消息传递,但仍然遇到同样的问题。

请指导我哪里错了。

P.S 我可以使用几乎相同的代码和编码通过 Gmail API 成功发送电子邮件。但我无法将邮件另存为草稿。

【问题讨论】:

标签: javascript gmail-api


【解决方案1】:

我刚刚遇到了这个问题,看起来 API 客户端改变了它期望有效负载的方式。我不得不删除 draft 属性来解决这个问题:

      var request = gapi.client.gmail.users.drafts.create({
        userId: "me",
        message: {
            raw: ...)
          }
      }

【讨论】:

    猜你喜欢
    • 2018-04-19
    • 2018-02-20
    • 2014-10-19
    • 2016-01-12
    • 2021-04-27
    • 1970-01-01
    • 2017-06-17
    • 2014-08-17
    • 2020-12-17
    相关资源
    最近更新 更多