これは、users.js に json を含むグローバル配列です。
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
});
});
ただし、2 つのパラメーターを取得する次の関数は期待どおりに機能しません。
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
});
});
URLで次のように年齢を渡しても、ユーザー情報が返されます。
http://localhost:8080/users/1+226
226 は定義された年齢のいずれでもないため、以下を返す必要があります。
{
message : 'User Not Found',
error: true
}
年齢を入力しても、値が返されます。ガイドしてください。
http://localhost:8080/users/1+24