我有一个expressjs应用程序与everyauth设置。只允许特定用户使用everyauth登录
Everyauth工作正常。现在,我希望everyauth允许用户登录到其电子邮件ID与正则表达式匹配的应用程序。
说我希望人们登录其电子邮件以字母“富”开始(假设,[email protected])或像adeptocorp.com特定域的(假设[email protected])
请给我提供一些解决方案来解决这种情况
我有一个expressjs应用程序与everyauth设置。只允许特定用户使用everyauth登录
Everyauth工作正常。现在,我希望everyauth允许用户登录到其电子邮件ID与正则表达式匹配的应用程序。
说我希望人们登录其电子邮件以字母“富”开始(假设,[email protected])或像adeptocorp.com特定域的(假设[email protected])
请给我提供一些解决方案来解决这种情况
如果您使用密码认证(我认为原因,否则你不必关心电子邮件地址),那么你可以使用validateRegistration
函数。
对于其他人,写像一块连接中间件:
function checkEmail(regex){
return function (req, res, next) {
// get everyauth.user via the everyauth helper
if (!everyauth.user.email.test(regex)) {
res.writeHead(403);
res.end("e-mail address not allowed");
}
else { next(); }
}
};
而且everyauth
像使用权后,使用它:
connect // or express
...
.use(checkEmail)
我正在使用谷歌和Facebook的身份验证 – ArjunUrs 2012-03-28 15:26:01
编辑添加了一些自定义中间件 – 2012-03-28 15:32:46
>请提供我一些解决方案来解决这种情况|| ||您应该考虑告诉我们您尝试过的以及为什么/如何失败。只是要求解决方案会让你无处可寻。 – Randolpho 2012-03-28 14:10:12