el directorio de mi proyecto es -
app ├── app.js ├── index.html ├── node_modules ├── package.json ├── package-lock.json ├── signup_success.html └── style.cssmi código de archivo de aplicación se proporciona a continuación-
código de archivo app.js: -
var express=require("express"); var bodyParser=require("body-parser"); const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:27017/gfg'); var db=mongoose.connection; db.on('error', console.log.bind(console, "connection error")); db.once('open', function(callback){ console.log("connection succeeded"); }) var app=express() app.use(bodyParser.json()); app.use(express.static('public')); //app.use(express.static(__dirname + "/../public")); //app.use(app.router); app.use(bodyParser.urlencoded({ extended: true })); app.post('/sign_up', function(req,res){ var name = req.body.name; var email =req.body.email; var pass = req.body.password; var phone =req.body.phone; var data = { "name": name, "email":email, "password":pass, "phone":phone } db.collection('details').insertOne(data,function(err, collection){ if (err) throw err; console.log("Record inserted Successfully"); }); return res.redirect('signup_success.html'); }) app.get('/',function(req,res){ res.set({ 'Access-control-Allow-Origin': '*' }); return res.redirect('index.html'); }).listen(3000) console.log("server listening at port 3000");cuando ejecuto el archivo app.js, aparece "No se puede OBTENER/index.html" en el navegador. ingrese la descripción de la imagen aquí
Usted especificó express.static para servir sus archivos html estáticos. Encuentre la documentación estática expresa aquí .
app.use(express.static('public')); Está apuntando express.static a una carpeta llamada "public". Es una práctica común tener una carpeta pública para almacenar todos sus archivos estáticos. Cree una carpeta public/ y mueva sus archivos .css y .html allí.