db.js 644 B

12345678910111213141516171819202122232425262728
  1. // lib/db.js
  2. import { MongoClient } from "mongodb";
  3. const uri = process.env.MONGODB_URI;
  4. let client;
  5. let clientPromise;
  6. function getClientPromise() {
  7. if (!uri) {
  8. // Jetzt meckern wir erst beim tatsächlichen Zugriff auf die DB
  9. throw new Error("MONGODB_URI ist nicht gesetzt (Env prüfen)");
  10. }
  11. if (!clientPromise) {
  12. // In Dev-Umgebungen könnte man global._mongoClientPromise nutzen;
  13. // auf dem Server reicht ein einfacher Singleton.
  14. client = new MongoClient(uri);
  15. clientPromise = client.connect();
  16. }
  17. return clientPromise;
  18. }
  19. export async function getDb() {
  20. const client = await getClientPromise();
  21. return client.db();
  22. }