电子邮件正文以文件[gmailapi,Node.js]的形式发送
我曾尝试使用,但电子邮件正文以文件附件形式发送。其他一切正常(从、到、主题等) 我的问题的原始代码可以看到,但下面是一个更简单的示例,说明我正在尝试做什么:电子邮件正文以文件[gmailapi,Node.js]的形式发送,node.js,google-cloud-platform,gmail-api,Node.js,Google Cloud Platform,Gmail Api,我曾尝试使用,但电子邮件正文以文件附件形式发送。其他一切正常(从、到、主题等) 我的问题的原始代码可以看到,但下面是一个更简单的示例,说明我正在尝试做什么: import{google}来自'googleapis' const accessToken='使用googleapis包中的GoogleOAuth2创建的令牌'//这工作正常,因此我不会在这里包含代码 异步函数sendMail(主题:string、文本:string、收件人:string、发件人:string) { const utf8
import{google}来自'googleapis'
const accessToken='使用googleapis包中的GoogleOAuth2创建的令牌'//这工作正常,因此我不会在这里包含代码
异步函数sendMail(主题:string、文本:string、收件人:string、发件人:string)
{
const utf8Subject=`=?utf-8?B?${Buffer.from(subject.toString('base64')}=`
const messageParts=
[
`From:${From}`,
`收件人:${To}`,
'内容类型:text/html字符集=utf-8',
'MIME版本:1.0',
`主题:${utf8Subject}`,
'',
文本,
]
const message=messageParts.join('\n')
const encodedMessage=Buffer.from(消息)
.toString('base64')
.替换(/\+/g,'-'))
.replace(//\//g,'.\u')
.替换(/=+$/,'')
const gmail=google.gmail({version:'v1',auth:accessToken})
等待gmail.users.messages.send(
{
userId:'我',
请求主体:
{
原始:encodedMessage,
}
})
}
sendMail('一些主题','一些文本','to@example.com', 'from@example.com)
我认为在你的标题中,
必须用作内容类型
和字符集
之间的分隔符。我想这可能是你问题的原因。当您的脚本被修改时,它将变成如下所示
发件人:
致:
注:
- 在这个答案中,它假设
可以用于发送电子邮件。请小心这个constgmail=google.gmail({version:'v1',auth:accessToken})
'Content-Type: text/html charset=utf-8',
'Content-Type: text/html; charset=utf-8',