Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

484
Visualizações
No se puede OBTENER el error para el enrutamiento Express con parámetros:

Recibo un error Cannot GET cuando intento el enrutamiento rápido con parámetros por primera vez y no sé por qué.

Funcionó bien e instalé lodash y ahora ya nada funciona.

Aquí está el código:

 app.get("/posts/:postName"), function (req, res) { let requestedTitle = req.params.postName; posts.forEach(function(post) { let storedTitle = post.title; if (storedTitle === requestedTitle) { console.log('match found'); } else { console.log('no match found'); } }); };

Estoy usando Localhost y cuando trato de ejecutarlo me da un error Cannot Get.

Por ejemplo, ingreso: http://localhost:3000/posts/test Y, por lo general, me mantuvo en la ruta de inicio y la consola registró si coincidía con una de mis entradas anteriores o no.

Tengo instalado Express y todo aquí está el código completo. Pero ya no funcionará después de instalar lodash, ¿ven un error en alguna parte aquí? Estoy mirando esto durante 3 días jajaja:

 //jshint esversion:6 const express = require("express"); const bodyParser = require("body-parser"); const ejs = require("ejs"); const _ = require('lodash'); const homeStartingContent = "text"; const app = express(); let posts = []; app.set('view engine', 'ejs'); app.use(bodyParser.urlencoded({extended: true})); app.use(express.static("public")); app.get("/", function(req, res) { res.render(__dirname + "/views/home.ejs", {homeStartingContent: homeStartingContent, posts: posts}); }); app.get('/about', (req, res) => { res.render('about', {aboutContent: aboutContent}); }); app.get('/contact', (req, res) => { res.render('contact', {contactContent: contactContent}); }); app.get('/compose', (req, res) => { res.render('compose'); }); app.post('/compose', (req, res) => { posts.push(req.body); console.log(posts) res.redirect('/') }); app.get("/posts/:postName"), function (req, res) { let requestedTitle = req.params.postName; posts.forEach(function(post) { let storedTitle = post.title; if (storedTitle === requestedTitle) { console.log('match found'); } else { console.log('no match found'); } }); }; app.listen(3000, function() { console.log("Server started on port 3000"); });

En la documentación de Express, mostró este ejemplo de código y creo que mi código definitivamente debería funcionar. No entiendo por qué no lo es.

 app.get('/users/:userId/books/:bookId', (req, res) => { res.send(req.params) })
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Observe los paréntesis de cierre:

 app.get("/posts/:postName"), function (req, res) { ^

No debería estar allí, sino al final de la función del controlador.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda