javascript - 请帮我获取哈希密码

标签 javascript node.js express

我正在尝试获取管理员的哈希密码。

我尝试对密码进行哈希处理,但无法将其插入用户对象中。

import encryptor from '../helpers/password';

let hashed_pswd = 'john123';
const hashPassword= async () => {
    const adminPwd = await encryptor.encryptPassword(hashed_pswd, 10);
    console.log(adminPwd);
}
hashPassword();

export default [
    {
        id: 1,
        first_name: 'john',
        last_name: 'doe',
        email: 'john@gmail.com',
        password: adminPwd,
        address: 'kigali',
        is_admin: true
    }
]

我能够在控制台中记录哈希密码,但当我尝试发送 POST 请求时,我发现 adminPwd 未定义。

提前谢谢您。

最佳答案

由于您使用 async/await 作为 hashPassword 函数,您不妨将整个代码包装在一个代码中并删除该函数。您应该将 hashed_pswd 变量重命名为更有意义的名称,因为它在该阶段尚未进行哈希处理。我将其称为密码

import encryptor from '../helpers/password';

export default async () => {

  const password = 'john123';
  const hashedPassword = await encryptor.encryptPassword(password, 10);

  return [{
    id: 1,
    first_name: 'john',
    last_name: 'doe',
    email: 'john@gmail.com',
    password: hashedPassword,
    address: 'kigali',
    is_admin: true
  }];

};

导入该模块,您必须使用async来包装您的代码,因为您要从该async返回一个 promise 在getUserData中。

import getUserData from './getUserData.mjs';

(async () => {

  console.log(await getUserData());

})();

关于javascript - 请帮我获取哈希密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56209654/

相关文章:

javascript - 字符串包含使用替换后的替换值(Regex.last Match)

node.js - Mongoose,express-使用对象数组创建模式

node.js - Node JS 路由请求

Javascript 三元运算符未按预期工作

javascript - 为什么 .val() 不是函数?

javascript - 将参数传递给通过 document.createElement 创建的 div

node.js - 如何使用 HTTP API 从 gcr.io Docker Registry 列出图像和标签?

javascript - Node.js: promise 内的响应

node.js - 未捕获的异常和未处理的 Promise 拒绝

javascript - jQuery 是否在内部缓存元素?