Cuando agrego el parámetro de ruta ': nombre de usuario' a mi ruta GET (en el código a continuación), empiezo a encontrarme con este error:
Expected a JavaScript module script but the server responded with a MIME type of "text/html".
Mi dashboarduser.js está definido en mi dashboarduser.ejs. Intenté usar la extensión '.mjs' según la recomendación del documento de MDN, así como establecer los encabezados en ("Tipo de contenido", texto/html) y también texto /javascript, pero sin remedio.
Aquí están mis dos controladores de ruta que uso:
app.get(`/dashboarduser/:username`, isLoggedIn, (req, res) => { res.setHeader("Content-Type", "text/html") res.render('dashboarduser', {user: req.user.username}) console.log("req.user: " + req.user.username); }) app.post('/login', passport.authenticate('local', { // successRedirect: `/dashboarduser`, failureRedirect: '/login', failureFlash: true, }), (req, res) => { res.redirect('/dashboarduser/' + req.user.username) });Cuando un usuario inicia sesión, se lo lleva a su tablero con sus req.params. Por ejemplo, website.com/dashboarduser/johndoe, pero hay un error persistente en la consola. Estoy ejecutando una estrategia local a través de pasaporte local y uso mangosta local de pasaporte para una base de datos local. En última instancia, quiero que los usuarios puedan tener sus propios eventos que configuren, y quiero que puedan compartir fácilmente una URL para invitar a otros. ¿Son necesarios estos parámetros de ruta o el almacenamiento local se encargará de esto?
Gracias por leer ~