首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StrongLoop客户端扩展用户模型内置登录错误

问StrongLoop客户端扩展用户模型内置登录错误
EN

Stack Overflow用户
提问于 2016-03-03 07:15:11
回答 1查看 326关注 0票数 0

有没有人经历过通过客户端扩展StrongLoop中的内置模型“用户”?

问题是,我不能跳过新创建的客户端的验证。我已经用"emailVerificationRequired":false选项声明了客户机,但仍然无法登录。

错误:

错误:目标代码:“登录失败,因为电子邮件未被验证”名称:“错误”堆栈:“错误:登录失败,因为电子邮件没有在C:\xampp\htdocs\loopback-getting-started\node_modules\loopback\common\models\user.js:248:21↵的C:\xampp\htdocs\loopback-getting-started\node_modules\loopback\common\models\user.js:312:9”状态下验证↵:401 statusCode: 401

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-04 05:11:40

如果您不希望电子邮件验证放在模型-config.json中的代码下面

代码语言:javascript
复制
"user": {
"dataSource": "YOUR DATASOURCE",
"public": true,
"options": {
  "emailVerificationRequired": false
},
"$promise": {},
"$resolved": true}

另一件事是,您在逻辑下面手动停止验证。例如,如果管理员创建了用户。

代码语言:javascript
复制
  user.beforeRemote('create' ,function(ctx, modelInstance, next)
  {

      if(ctx.req.query.key == "admin") // if users created by Admin.
      {
        ctx.args.data.emailVerified = 1;
      }

      next();
  });

IN afterRemote

代码语言:javascript
复制
user.afterRemote('create', function(context, user, next) {


              if(!user.emailVerified)
                {

                    console.log('> user.afterRemote triggered');
                    var options = {
                      type: 'email',
                      to: user.email,
                      from: 'youremail,
                      subject: 'Thanks for registering.',
                      template: path.resolve(__dirname, '../../server/views/verify.ejs'),
                      redirect: '/verified',
                      user: user
                    };

                    user.verify(options, function(err, response) {
                      if (err) return next(err);

                      context.res.render('response', {
                        title: 'Signed up successfully',
                        content: 'Please check your email and click on the verification link ' +
                            'before logging in.',
                        redirectTo: '/',
                        redirectToLinkText: 'Log in'
                      });
                    });

                }
                else
                {

                  next();
                }

          });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35765489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档