【发布时间】:2017-03-09 22:38:49
【问题描述】:
我计划为我的流星应用程序编写一个单独的 API,可用于连接移动应用程序和其他一些第三方系统。我目前使用 react native 流星插件直接连接流星应用。但是我们需要将移动应用程序与流星分离。为此,我将创建一个直接连接到数据库的单独 API。因此,我将可以访问 Meteor 创建的旧用户帐户。我可以使用相同的帐户通过护照对用户进行身份验证吗?
【问题讨论】:
标签: meteor
我计划为我的流星应用程序编写一个单独的 API,可用于连接移动应用程序和其他一些第三方系统。我目前使用 react native 流星插件直接连接流星应用。但是我们需要将移动应用程序与流星分离。为此,我将创建一个直接连接到数据库的单独 API。因此,我将可以访问 Meteor 创建的旧用户帐户。我可以使用相同的帐户通过护照对用户进行身份验证吗?
【问题讨论】:
标签: meteor
是的。假设您有用户名和密码,您可以通过加密给定密码然后将其与用户存储的密码进行比较来使用 Accounts 包。这是在 Meteor 中使用 npm 包执行此操作的方法。
function authenticateUser(username, password){
//encrypting password
var bcrypt = Package['npm-bcrypt'].NpmModuleBcrypt;
var SHA256 = Package.sha.SHA256;
var hashedPass= SHA256(password);
var bcryptHash = Meteor.wrapAsync(bcrypt.hash);
hashedPass = bcryptHash(hashedPass, 10);
//current password
var user = Meteor.users.findOne({username:username})
if (user) {
var pass = user.services.password.bcrypt;
return pass === hashedPass;
}
return false;
}
【讨论】: