Entonces, ¿qué es lo que no estoy viendo aquí?
El problema es que no importa lo que ponga como archivo en:
app.get('/', function(req, res){ res.sendfile(__dirname + "/index2"); }); Parece que siempre devuelve index.html . A partir de ahora, dice index2.html , que de hecho es un archivo legítimo con una página HTML, pero cada vez que ejecuto este servidor y voy a localhost:8080 , seguirá sirviendo el index.html básico, no index2.html .
También cambiar index.html mostrará los cambios, por lo que creo que no es un problema de caché.
Pero, de nuevo, si presiona el botón Enviar, app.post funcionará bien y lo redirigirá a kiitos.html
var express = require('express'); var bodyParser = require('body-parser'); var app = express(); app.use(bodyParser()); app.use(express.static(__dirname + '/')) app.get('/', function(req, res){ res.sendfile(__dirname + "/index2.html"); }); app.post('/', function(req, res){ var code = req.body.code; console.log(code); res.sendFile( __dirname + "/kiitos.html"); }); app.listen(8080);Su carpeta estática es la que sirve el archivo index.html porque es su carpeta raíz.
intente crear una carpeta public para archivos estáticos (como imágenes, scripts y archivos css) y mueva sus archivos html a una carpeta de views y luego use:
// save static files like images, scripts and css in `public`... app.use(express.static(__dirname + '/public')) app.get('/', function(req, res){ // save html files in the `views` folder... res.sendfile(__dirname + "/views/index2.html"); }); app.post('/', function(req, res){ var code = req.body.code; console.log(code); res.sendFile( __dirname + "/views/kiitos.html"); });