NodeJS передает параметр из формы HTML - PullRequest
1 голос
/ 13 июня 2019

Я пытаюсь передать параметр из формы HTML на маршрутизатор NodeJS.Маршрутизация работает, как и ожидалось, но я получаю неопределенное значение параметра.

Я делал это в прошлом, когда параметр был значением поля ввода.Тем не менее, в этот раз я пытаюсь обойтись без полей и отправить параметр как часть оператора действия.

<form id="form_sidebar" action="/users/navigation?user_id=UserID" method="POST"> 
  <button id = "btn_button" type='submit'>Button</button>
</form>

на стороне маршрутизатора:

router.post('/navigation', (req, res) => {
  var fname =  req.body['user_id']
  console.log(fname)
})

Я ожидал, что UserID будет напечатан вконсоль.Но получение неопределенного.

Любой вклад будет принят с благодарностью.

1 Ответ

2 голосов
/ 13 июня 2019

Просто вы не обращаетесь к правой части запроса, поскольку вы передаете user_id в качестве параметра запроса, а не внутри тела запроса, поэтому Express разделяет объект с параметрами запроса. Попробуйте получить доступ к параметру следующим образом:

router.post('/navigation', (req, res) => {
    var fname =  req.query.user_id
    console.log(fname)
})
...