Вот мой глобальный массив с JSON в моем users.js:Node.js параметры не работают должным образом
global.users = [
{
'id':1,
'name' : 'Dain',
'age' : 24,
'hobby' : 'gaming'
}
];
router.get функции:
router.get('/:userid', function(req, res){
for(let i = 0 ; i < global.users.length ; i++){
if(global.users[i].id === parseInt(req.params.userid, 10)){
return res.json({
user: global.users[i],
message : 'Success',
error: false
});
}
}
return res.status(404).json({
message : 'User Not Found',
error: true
});
});
Однако, следующая функция для получения двух параметров не работает должным образом:
router.get("'/:userid'+'+:age'", function(req, res){
for(let i = 0 ; i < global.users.length ; i++){
if((global.users[i].id === parseInt(req.params.userid, 10)) && (global.users[i].age === parseInt(req.params.age, 10))){
return res.json({
user: global.users[i],
message : 'Success',
error: false
});
}
}
return res.status(404).json({
message : 'User Not Found',
error: true
});
});
Даже если I pas как указано в URL-адресе, он по-прежнему возвращает информацию о пользователе.
http://localhost:8080/users/1+226
С 226 не любой из возрастов, определенных, он должен вернуть:
{
message : 'User Not Found',
error: true
}
Даже если я ставлю любой возраст, она по-прежнему возвращает значения. Пожалуйста, направляйте.
http://localhost:8080/users/1+24
router.get (" '/: идентификатор' + '+: возраст" я думаю, что это должно be router.get ('/: userid /: age /' – Andreas
Вы правы andreas, но я хочу показать http: // localhost: 8080/users/1 + 24 в URL – dain
пути к Вашей неправильной настройке – Beginner