Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

441
Vistas
res.render () no procesa el archivo ejs, no se produce ningún error en la aplicación node.js

Estoy tratando de enviar un archivo con plantilla ejs como respuesta a una solicitud HTTP; los renders html y css pero el Javascript no responde. Las fuentes de Javascript están vinculadas en el encabezado de la respuesta de ejs, pero las funciones no se llaman cuando se muestra la página.

aplicación.js

 const express = require('express') const app = express() let port = process.env.PORT || 3000 require('dotenv').config() const { auth,requiresAuth } = require('express-openid-connect') const path = require('path') let mysql = require('mysql') const bodyParser = require('body-parser') app.use(bodyParser.urlencoded({ extended: true })) app.use(bodyParser.json()) app.set("views", path.join(__dirname, "views")) app.set("view engine", "ejs") app.use(express.static(__dirname)) app.set('port',port) app.get('/createnew', requiresAuth(), function (req, res) { let user = (JSON.stringify(req.oidc.user.email)) user = user.replace(/"/g, '\''); let user1 = { completeremail: user, } res.render('newform', {user : user1}) })

La solicitud se realiza desde profilelist.ejs

 function createNew() { let getUrl = window.location; let baseUrl = getUrl .protocol + "//" + getUrl.host; let query = baseUrl + '/createnew?' let req = new XMLHttpRequest() req.open("GET", query, true) req.addEventListener('load', function () { let response = req.responseText document.querySelector("html").innerHTML = response }) req.send() }

Mi estructura de archivos es:

 node_modules/ views/ complete.ejs form.ejs maintemplate.ejs newform.ejs profilelist.ejs .env .gitignore app.js javascript.js packahe.json package-lock.json README.md stylesheet.css
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El problema es que llamó a su función de middleware requiresAuth con argumentos vacíos, lo que significa que su middleware no llamará a next() para pasar el control a la siguiente función que representa su plantilla ejs, intente llamar a su middleware sin ()

 app.get('/createnew', requiresAuth , function (req, res) { //your code here })
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda