我正在使用bcryptjs对我的节点服务器上的密码进行散列和比较。这里是我的功能:Bcryptjs异步不起作用
this.testPassword = function(pass1, pass2, callback) {
bcrypt.compare(pass1, pass2, function(err, res) {
callback(err, res);
}.bind(this));
};
而且函数调用:
context.runQuery("...", function(resp, err) {
if (!err) {
testPassword("test11", "test12", function(err2, resp2) {
});
}
});
尽管事实上,这应该是异步,它会减慢服务器为200毫秒。这是bcrypt-js模块还是我的实现问题。
代码似乎没什么问题。不太清楚为什么你的意思是“慢下来”......但仅仅是因为JS /节点中的异步并不意味着它不会影响性能......如果这个操作非常密集,它会放慢速度(因为它是不物理并发)。我猜你可以使用像工人这样的东西来获得更好的结果。 –
那么使用async有什么意义? –
为了不阻止执行,但这并不意味着性能更好,因为它没有利用物理并发能力。所以......它应该放慢速度,但不应该阻止。 –