Hice una aplicación simple de pila completa para una solicitud de trabajo usando una pila mern. La aplicación requiere que la aplicación se implemente en la repetición. Pude ejecutar mi aplicación desde mi computadora portátil, pero tengo problemas para conectar mi back-end con mis llamadas de API de front-end.
No he usado mucho antes replit u otras plataformas de codificación en línea, así que no estoy muy seguro de cómo hacerlo. Si ejecuto mi front-end en la repetición y mi back-end desde los archivos de mi computadora portátil local, las llamadas a la API funcionan bien. Pero si ejecuto start tanto front end como back end en la repetición, el servidor se iniciará pero no lo alcanzarán las llamadas API.
Aquí está el enlace de repetición: https://replit.com/@MayurKumar4/In-replit-how-to-connect-to-mongoosemongo-api-endpoints?v=1
A continuación se muestra la página de índice de mi aplicación express.
El dbURI está actualmente vinculado a un clúster de atlas mongodb que configuré y está trabajando con algunos datos iniciales.
el puerto está configurado en 4000
import express from 'express' import mongoose from 'mongoose' import router from './config/routes.js' import { port, dbURI } from './config/environment.js' import cors from 'cors' const app = express() const startServer = async () => { try { // Attempt mongodb connection await mongoose.connect(dbURI) console.log('Mongodb connected') // --Middleware-- // JSON Parser app.use(express.json()) app.use(cors()) // Logger app.use((req, _res, next) => { console.log(`🚨 Request received: ${req.method} - ${req.url}`) next() }) // Routes app.use('/api', router) // Catch All app.use((_req, res) => { return res.status(404).json({ message: 'Route Not Found' }) }) // If mongodb connects successfully app.listen(port, () => console.log(`🚀 Server listening on port ${port}`)) } catch (err) { console.log(err) } } startServer()