大锅们,帮忙看看,本地测试发送邮件带图片也没有问题,上传到linux服务器后发送邮件没有问题,上传图片没有问题,但发送的邮件如果带有图片,就有问题,报502错误,问题来自:upload.array('images')。我应该怎么解决。
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './uploads/');
},
filename: function (req, file, cb) {
cb(null, file.originalname);
},
});
const upload = multer({ storage: storage });
app.post('/feedback', upload.array('images'), (req, res) => {
let transporter = nodemailer.createTransport({
host: 'smtp.163.com',
port: 465,
secureConnection: true,
auth: {
user: 'xxsderrs@163.com',
pass: 'RMXTOKUENXOWYJLA',
}
});
let mailOptions = {
from: 'xxsderrs@163.com',
to: 'lfdsfwee@163.com',
subject: 'Hello',
html: `
<p>用户反馈:${req.body.text}</p>
<p>联系邮箱:${req.body.email}</p>
<p>上传的图片:</p> `,
attachments: req.files.map((file) => ({
filename: file.originalname,
path: file.path,
})),
};
transporter.sendMail(mailOptions, (error, info) => {
if (error) {
res.json({
code: 500,
message: '发送失败',
});
} else {
res.json({
code: 200,
message: '发送成功',
});
}
});
});