我有个问题。我正在尝试编程一个后端,它从客户端站点获得一个请求,服务器响应是一封电子邮件。另外,我希望将数据保存在DB中。基本上,我在客户端网站上有一个表单,我只想保存数据并通过电子邮件将数据发送给用户。奇怪的是,它正在起作用,但我也得到了这样的答案:
无法在标头发送到客户端后设置它们
有人能告诉我为什么会这样吗?
const Briefing = require("../models/briefing");
const sgMail = require("@sendgrid/mail");
sgMail.setApiKey(process.env.EMAIL_API_KEY);
exports.briefing = (req, res) => {
const {
gender,
age,
income,
} = req.body;
let newBriefing = new Briefing({
gender,
age,
income,
});
newBriefing.save((err, success) => {
if (err) {
console.log("ERROR CREATING BRIEFING", err);
return res.status(400).json({
error: err,
});
}
res.json({
message: "Briefing successfull created",
});
});
const emailData = {
to: process.env.EMAIL_TO,
from: process.env.EMAIL_FROM,
subject: `Briefing`,
text: "Eine Aufstellung des erstellten Briefings",
html: `
<h1>Das Briefing</h1>
<p>Vielen dank, dass du dir die Zeit genommen hast dieses Briefing zu erstellen.</p>
<p>Hier vorab die Daten:</p>
<p>${gender}</p>
<p>${age}</p>
<p>${income}</p>
<p>desweiteren befindet sich im anhang eine PDF</p>
`,
};
sgMail
.send(emailData)
.then((send) => {
console.log("SIGNUP EMAIL SEND", send);
return res.json({
message: `Email has been sent to social@moritzwright.com follow the instruction to activate your account.`,
});
})
.catch((err) => {
console.log("EMAIL SENDING ERROR", err);
console.error(err.response.body);
});
};发布于 2020-05-31 15:08:39
我已经解决了在if声明之后发送电子邮件的过程中的问题,如下所示:
const Briefing = require("../models/briefing");
const sgMail = require("@sendgrid/mail");
sgMail.setApiKey(process.env.EMAIL_API_KEY);
exports.briefing = (req, res) => {
const {
gender,
age,
income,
});
newBriefing.save((err, success) => {
if (err) {
console.log("ERROR CREATING BRIEFING", err);
return res.status(400).json({
error: err,
});
}
const emailData = {
to: process.env.EMAIL_TO,
from: process.env.EMAIL_FROM,
subject: `Briefing`,
text: "Eine Aufstellung des erstellten Briefings",
html: `
<h1>Das Briefing</h1>
<p>Vielen dank, dass du dir die Zeit genommen hast dieses Briefing zu erstellen.</p>
<p>Hier vorab die Daten:</p>
<p>${gender}</p>
<p>${age}</p>
<p>${income}</p>
<p>desweiteren befindet sich im anhang eine PDF</p>
`,
};
sgMail
.send(emailData)
.then((send) => {
console.log("SIGNUP EMAIL SEND", send);
return res.json({
message: `Email has been sent to social@moritzwright.com follow the instruction to activate your account.`,
});
})
.catch((err) => {
console.log("EMAIL SENDING ERROR", err);
console.error(err.response.body);
});
});
};https://stackoverflow.com/questions/62117808
复制相似问题