recibir parametros por url nodejs

publicado por: Anonymous

me gustaría poder recibir algún parametro por url con nodejs lo he intentado de esta forma:

router.get('/events:id', (req,res) => {
var choice = req.params.id;
})

sin embargo obtengo este error:
introducir la descripción de la imagen aquí

solución

Para que tengas el escenario que te planteo funcional, deberás instalar express con el comando npm i -S express y posterior tener una estructura de código similar a la que te muestro

Como no especificas que tecnologías usas, te comento lo siguiente:

  1. Express 4 o superior
  2. NodeJS

Dentro de tu archivo app.js escribe lo siguiente:

const express = require('express')

const app = express()

app.get('/about/:name', (req, res) => {
    res.send('Hello World:' + req.params.name)
})

app.listen(3000, () => {
    console.log("Running")
})
  1. La variable que pasas es con la sintaxis de 2 puntos y el nombre de la misma
  2. Para invocarla y poder imprimirla es req.params.nombre_variable

Recuerda que hasta el momento como yo tengo código es necesario
reiniciar el servicio cada vez que escribas algo si no los cambios no
se verán con el comando node app.js o el nombre que le hayas puesto a tu archivo

ACTUALIZACIÓN

Si deseas guardar el dato que llega en una variable, solo debes hacer
lo siguiente es decir tu código debe lucir similar al siguiente

const express = require('express')

const app = express()

app.get('/about/:name', (req, res) => {
    const name = req.params.name
    res.send('Hello World:' + name)
})

app.listen(3000, () => {
    console.log("Running")
})

Como puedes notar en el ejemplo anterior, asigno a la constante name
lo que se recibe por req que es el request que a su vez lee a
params y obtiene el valor de la variable que viene por URL llamada
name

Respondido por: user75901

Leave a Reply

Your email address will not be published. Required fields are marked *