39 lines
945 B
JavaScript
39 lines
945 B
JavaScript
// server.js
|
|
require("dotenv").config();
|
|
const express = require("express");
|
|
const cors = require("cors");
|
|
const { initDB } = require("./config/connector");
|
|
|
|
const app = express();
|
|
|
|
// Porta da API (padrão 3000 se não tiver no .env)
|
|
const PORT = process.env.PORT || 3000;
|
|
|
|
// Middlewares básicos
|
|
// 👇 CORS aqui
|
|
app.use(
|
|
cors({
|
|
origin: "http://localhost:8080", // origem do teu front
|
|
methods: ["GET", "POST", "PUT", "DELETE", "OPTIONS"],
|
|
allowedHeaders: ["Content-Type", "Authorization"],
|
|
})
|
|
);
|
|
app.use(express.json()); // parseia JSON no body
|
|
|
|
|
|
// Sobe o servidor
|
|
async function startServer() {
|
|
await initDB(); // garante que o banco está ok antes de subir a API
|
|
|
|
app.listen(PORT, () => {
|
|
console.log(`🚀 Zoe API rodando em http://localhost:${PORT}`);
|
|
});
|
|
}
|
|
|
|
|
|
|
|
app.use("/courses", require("./routes/courses"));
|
|
app.use("/webhooks", require("./routes/webhooks"));
|
|
|
|
|
|
startServer(); |