javascript - bcrypt 比较:未触发回调
问题描述
我对bcrypt.compare()有一个奇怪的问题。
检查这个:
function logUserIn(redirectRouteName) {
setIsLogin(true);
const fields = User.getPropertiesName();
Base('Customers').select({
maxRecords: 1,
fields,
filterByFormula: `email = "${state.username}"`
}).eachPage((records, fetchNextPage) => {
const user = new User(records[0].fields);
bcrypt.setRandomFallback((len) => {
const buf = new Uint8Array(len);
return buf.map(() => Math.floor(isaac.random() * 256));
});
bcrypt.compare(state.password, user.password, (err, res) => {
// console.log('hello'): returns nothing...
if(res){
setUserData(user);
setIsLogin(false);
props.navigation.navigate(redirectRouteName);
}
});
}, (err) => {
if (err) { console.error(err); return; }
});
}
我的问题是,没有触发 bcrypt 比较回调。我在它周围放了日志,很好,state.password
并且user.password
确实包含预期值。实际上 bcrypt.compare 中没有任何内容被执行,所以......我在这里迷路了。有任何想法吗?
解决方案
推荐阅读
- java - 如何在 jSwing 组合框中到达对象?
- java - 创建名称为“FilterService”的 bean 时出错:通过字段“filterDAO”表示的不满足依赖关系
- c - 带有 C UDP 套接字的选择性重复 ARQ
- python - 将 Kivy 安装到备用位置
- c - 使用 gdb 调试时的字符/字符串输入
- python - pip:egg_info 失败,错误代码为 1
- ruby - ruby 上的 Caracal gem 跳转到不同的方法,同时继续在文档上书写
- angular - angular-handsontable 显示十进制值
- javascript - 如何在函数中使用 this.id
- php - SQL database on GitHub using PHP