为数据库中的所有用户从mongo Obj.ID生成URL

时间:2017-09-11 15:14:18

标签: mongodb url mongoose mean-stack objectid

任务:每个注册用户的唯一网址。

使用: Mongoose,Express,Angular 4,Node。

期望的结果: http://localhost:3000/user/207502j20nf23hf928n3f982

path: 'user/:id'应代表注册用户个人资料。

path: 'user/**'应该导致404.

Moshe Karmel @ Answers提供的方法。

1 个答案:

答案 0 :(得分:1)

这是你要做的。

1)在express中为user /:id设置路由 2)检查您是否有匹配的用户 3)如果是,则回复用户,否则回复404

app.get('/user/:id', function(req, res){
    // query mongoose to get user by if
    User.find({ _id : req.params.id }, function(err, user){
        if(user){
            // we have a user with that id
            res.status(200).json(user);
        }else{
            res.status(404).json('not found');
        }
    });
});