我正在 Firebase 中建立一个带有 node.js 后端的网站。其中一个页面是联系页面,用户可以在其中提交表单并将其内容发送到我的电子邮件地址。
我使用 mailgun api 设置了所有内容。
const functions = require("firebase-functions");
const express = require('express');
const mailgun = require('mailgun-js');
const app = express();
app.use(express.urlencoded());
app.use(express.json());
app.use(express.static('public'));
function sendMsg(name, email, subject, message) {
const mg = mailgun({
apiKey: 'APIKEY',
domain: 'sandboxrandomnumbers.mailgun.org'
});
const data = {
from: `${name} <${email}>`,
to: 'myemail',
subject: subject,
text: message
};
mg.messages().send(data, (err, body) => {
console.log(body);
})
}
app.post('/contact/success', (req, res) => {
let name = req.body.name;
let email = req.body.email;
let subject = req.body.subject;
let message = req.body.message;
sendMsg(name, email, subject, message);
res.redirect('/contact/success');
})
exports.website = functions.https.onRequest(app);
发生的情况是消息正在排队但未发送(基于控制台上打印的内容)。如何确保消息立即发送而不是排队?
PS:我还是个初学者,请多多包涵。