My Register Server работает на локальном хосте, но ломается при развертывании в DigitaloCean. Я пытался запустить его на сервере в режиме разработки, но это не имеет значения. < /P>
Я получаю ошибку тайм -аута, и я понятия не имею, почему.
My Register Server работает на локальном хосте, но ломается при развертывании в DigitaloCean. Я пытался запустить его на сервере в режиме разработки, но это не имеет значения. < /P> Я получаю ошибку тайм -аута, и я понятия не имею, почему.[code]Error in registerUser: [Error: Connection timeout] { code: 'ETIMEDOUT', command: 'CONN' } < /code> Вот действие сервера: < /p> "use server";
import { actionClient } from "@/lib/safe-action"; import { registerSchema } from "@/schemas/Register-schema"; import { prisma } from "@/prisma"; import bcrypt from "bcryptjs"; import crypto from "crypto"; import { sendSMS } from "@/lib/sms"; import { sendEmail } from "@/lib/email";
await prisma.mobileToken.create({ data: { token: mobileToken, expires: mobileExpires, user: { connect: { mobile, }, }, }, }); await sendEmail( email, "welcome@tutacall.com", "Verify your email", `Visit ${process.env.BASE_URL}/verify-email?token=${token} to verify your email address.`, `[url=${process.env.BASE_URL}/verify-email?token=${token}]Verify your email[/url]` );
await sendSMS( mobile, "Tutacall", `Your verification code is: ${mobileToken}. Login and use it within 6 hours.` );
return { success: "Verification Email and SMS sent!" }; } catch (error) { console.error("Error in registerUser:", error); return { error: "An error occurred. Please try again." }; } } ); < /code> База данных обновляется, но, похоже, она терпит неудачу при отправке электронной почты, и я понятия не имею, почему. Возможно, переменные в .env.local не загружаются, но NPM автоматически загружает их на мою локальную машину, поэтому должен делать то же самое на сервере, когда я тестирую на сервере, используя NPM. Я также попытался открыть порт 465, если это также.import nodemailer from "nodemailer";
await new Promise((resolve, reject) => { // send mail transporter.sendMail( mailData, (err: Error | null, info: nodemailer.SentMessageInfo) => { if (err) { console.error(err); reject(err); } else { console.log(info); resolve(info); } } ); }); }; [/code] Я был бы очень благодарен за помощь с этим.