最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

我该怎么办,如果用户登录,他只能更改其个人资料nodejsmongodbmongoosepug

运维笔记admin9浏览0评论

我该怎么办,如果用户登录,他只能更改其个人资料nodejs / mongodb / mongoose / pug

我该怎么办,如果用户登录,他只能更改其个人资料nodejs / mongodb / mongoose / pug

所以基本上我有一条动态路由,可以路由到数据库中的每个用户用户名

router.get('/:username', function (req, res) {
  User.findOne({username:decodeURI(req.params.username)}, function (err, user) {
    if (err) throw err;
    if (user == null) {

    }else if(user !== null){
      res.render('user-profile', {
        user:user
      });
    }
  });
});

[我想检查一下:如果登录的用户是“ alpha”,并且他在以下URL上看到自己的个人资料:http://localhost:8080/users/alpha,则向他显示私人信息,以便只有他才能看到。如果“ beta”想要查看“ alpha”个人资料,则他看不到任何alpha的私人信息

我正在处理护照,本地护照和特快专递

回答如下:

它没有您想象的那么复杂。因此,让我们讨论场景A和B有两个用户。我们要在此处实现的是url / users /:username仅显示用户的公共信息,并且如果username与登录用户的用户名相同,则在这种情况下,它还将显示登录用户的私人信息。用户

一种非常简单的方法是列出所有信息(公共和私人),但仅在/ users /:username的ID或用户名与已登录用户相同的情况下,才在配置文件页面上显示私人信息。(很容易可以通过任何模板引擎实现)

如果您使用的是护照,那么已登录的用户信息将附加到req对象,您可以使用该对象简单地检查是否需要显示信息。

发布评论

评论列表(0)

  1. 暂无评论