代码之家  ›  专栏  ›  技术社区  ›  belatry

使用代码段从google api发送消息

  •  0
  • belatry  · 技术社区  · 8 年前

    在测试中,我试图通过gmail api发送消息,然后我想通过他在接收gmail框中的“代码片段”找到这条消息。请求:

     sentMailRequest = {
            method: 'POST',
            url: 'https://www.googleapis.com/gmail/v1/users/me/messages/send',
            body: {
                raw: rawMailString,
                snippet: messageSnippet
            },
        };
    

    然后通过“google auth library”的“request”方法处理请求。此邮件发送成功,但在收到的gmail帐户中,看到的邮件片段=“”。我做错了什么?

    1 回复  |  直到 8 年前
        1
  •  0
  •   belatry    8 年前

    “snippet”是一个自动生成的字段,由消息体组成。我的解决方案是在原始字段中添加消息正文的文本:

    mailString = 'From: 1@gmail.com\n' +
    'To: 2@gmail.com\n' +
    'Subject: test message send from google api\n' +
    '\n' +
    'body of the test message = snippet';
    

    然后在请求中将其转换为基64:

    sentMailRequest = {
            method: 'POST',
            url: 'https://www.googleapis.com/gmail/v1/users/me/messages/send',
            body: {
                raw: Buffer.from(mailString).toString('base64')
            },
        };
    

    本例中的代码段将等于“测试消息正文=代码段”