我想从json文件中读取用户列表,但我想只读一个我使用node.js fs module`
app.get("/1",function(req,res)
{ fs.readfile("users.json",function(data,err){res.write(data)}}
当有/ 1我想打开第一个用户时和/ 2想要打开第二个用户
答案 0 :(得分:0)
首先,将json加载到Serverstart上的RAM中,这样您就不必每次都重读:
var users=JSON.parse(fs.readFileSync("users.json","utf-8"));
现在您可以使用Express功能:
//if theres a param ( a dynamic url) called user, lets place the user with that id into the property user of the request
app.param("user",function(req,res,next,id){
req.user=users[id];
next();
});
//if theres a request to user/1 the upper code will be executed with id=1, and well return our user
app.get("user/:user",function(req,res){
res.json(req.user);
});
请注意,使用param不是必需的,但更容易扩展程序。现在你可以访问:
//localhost/user/1
上面的代码要求users.json为:
[
{name:test},
..
]
如果您希望user /全部返回:
app.get("user/",function(req,res){
res.json(users);
});