From 120756fc46dfbad5577da53aa8ca9ddd7ac2d85c Mon Sep 17 00:00:00 2001 From: Joseph J Helfenbein Date: Sat, 25 Jan 2025 04:02:59 -0500 Subject: [PATCH] connectdb fix --- src/app/api/webhook/route.js | 10 +--------- src/app/lib/connectDB.js | 15 +++++++++++---- 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/src/app/api/webhook/route.js b/src/app/api/webhook/route.js index 5f564cb..7f9043d 100644 --- a/src/app/api/webhook/route.js +++ b/src/app/api/webhook/route.js @@ -2,18 +2,10 @@ import mongoose from 'mongoose'; import { User } from '../../../models/User'; import { NextResponse } from 'next/server'; import { Webhook } from 'svix'; - -async function connectDB() { - if (mongoose.connection.readyState >= 1) return; - await mongoose.connect(process.env.MONGO_URI, { - useNewUrlParser: true, - useUnifiedTopology: true, - }); -} +import connectDB from '../../../lib/connectDB'; const CLERK_WEBHOOK_SECRET = process.env.CLERK_WEBHOOK_SECRET; - export async function POST(req) { console.log('Received request:', req); diff --git a/src/app/lib/connectDB.js b/src/app/lib/connectDB.js index fc31aa0..afef214 100644 --- a/src/app/lib/connectDB.js +++ b/src/app/lib/connectDB.js @@ -22,12 +22,19 @@ async function connectDB() { bufferCommands: false, }; - cached.promise = mongoose.connect(DATABASE_URL, opts).then((mongoose) => { - return mongoose; - }); + try { + cached.promise = mongoose.connect(DATABASE_URL, opts).then((mongoose) => { + console.log('MongoDB connected successfully'); + return mongoose; + }); + } catch (error) { + console.error('Error connecting to MongoDB:', error.message); + throw new Error('Error connecting to MongoDB'); + } } + cached.conn = await cached.promise; return cached.conn; } -export default connectDB; \ No newline at end of file +export default connectDB;