gpt4 book ai didi

javascript - 如何使用@sendgrid/mail 发送 zip 文件

转载 作者:行者123 更新时间:2023-12-03 07:08:35 25 4
gpt4 key购买 nike

这是我编写的使用@sendgrid 发送带附件的电子邮件的代码

  const mailOptions = {}
if(mailOptions){
mailOptions.from = 'APP NAME'
mailOptions.to = 'emailId'
mailOptions.subject = 'Subject' // Subject line
//mailOptions.attachments = attachments
mailOptions.text = 'attachments'
}
const sendEmail = await sgMail.send(mailOptions)

但它只发送主题为“无附件”的邮件

取消注释 attachment 行时出现的错误

{ Error: Bad Request
at Request.http [as _callback] (node_modules/@sendgrid/client/src/classes/client.js:124:25)

为什么会发生这种情况,谁能帮帮我。

最佳答案

这个问题已经有一段时间了,但回答以备将来引用。

为了修复错误,附件必须采用 Base64 编码 - 并且其文件类型应设置为“application/zip”。要输入的 .js 代码也已大大更新。今天的示例如下所示

const sgMail = require('@sendgrid/mail');
sgMail.setApiKey(process.env.SENDGRID_API_KEY);

const fs = require("fs");

pathToAttachment = `${__dirname}/attachment.zip`;
attachment = fs.readFileSync(pathToAttachment).toString("base64");

const msg = {
to: 'test@example.com',
from: 'test@example.com',
subject: 'Subject',
text: 'Sent using Node.js',
attachments: [{
content: data.toString('base64'),
filename: filename,
type: fileType,
disposition: 'attachment',
}, ],
};
sgMail.send(msg).catch(err => {
console.log(err);
});

编码愉快!

关于javascript - 如何使用@sendgrid/mail 发送 zip 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54301892/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com