当我包含Meteor帐户包和accounts-ui包时,用户名区分大小写。
如果我注册为“Liam”,然后注销并尝试以“liam”身份重新登录,则无效。但是,我可以使用用户名“liam”注册一个新帐户。
我想更改它,因此用户名不区分大小写,但我不知道从哪里开始。有什么建议吗?
答案 0 :(得分:1)
在服务器上,尝试执行以下操作:
Accounts.onCreateUser(function(options, user) {
user.username = user.username.toLowerCase();
if (options.profile)
user.profile = options.profile;
return user;
});
确保username
始终以小写字母存储。
您在客户端需要做的事情可能会有点复杂。不知何故,您需要确保发送到服务器的username
始终转换为小写。不是很干净,但最简单的方法可能是修补Meteor.loginWithPassword
方法,或者在用户输入值时将用户名转换为小写。
答案 1 :(得分:0)
我也有这个问题。
我的目标是:
用户可以在Capital和small之间选择用户名
所以我决定在个人资料中存储公共用户名,在“小写”之后存储技术用户名。
在我的项目中,身份验证是通过电子邮件和密码完成的,因此profile-username只是一个可以发布和显示的配置文件数据
我希望它会有所帮助