我在 next.js 中的聯系表單有問題,我沒有任何錯誤(已顯示),一切正常,直到部署(在 Vercel 上)。我獲取我的表格,狀態為 200,但我沒有收到 Gmail 上的電子郵件。我也沒有收到任何其他信息。當我在“開發”和“構建”上測試我的應用程序時,我收到了電子郵件。我在 Gmail 帳戶中也有“不太安全的應用程序”選項。這是我在 Next.JS 中的代碼:contact.js 中的 fetch 方法: fetch("/api/contact", { method: "POST", headers: { Accept: "application/json, text/plain, */*", "Content-Type": "application/json", }, body: JSON.stringify({ name: mailName, email: mailAddress, text: mailText, }), }).then((res) => { console.log("Fetch: ", res); res.status === 200 ? router.push("/success") : router.push("/error");在 api/contact.js 中require("dotenv").config();const nodemailer = require("nodemailer");export default (req, res) => { const { name, email, text } = req.body; const transporter = nodemailer.createTransport({ service: "gmail", auth: { user: process.env.EMAIL, pass: process.env.PASSWORD, }, }); const mailOption = { from: `${email}`, to: `${process.env.EMAIL}`, subject: `New mail from ${email}`, text: ` ${name} wrote: ${text} `, }; transporter.sendMail(mailOption, (err, data) => { if (err) { console.log(err); } else { console.log("mail send"); } }); console.log(name, email, text); res.send("success");};請幫忙
Next.JS 和 Nodemailer,從聯系表單發送電子郵件
慕田峪7331174
2023-02-17 10:29:20
