首页 > 解决方案 > 我正在尝试使用以下发布请求将用户保存到 mysql 数据库,但出现错误 bcrypt Error: data and hash arguments required

问题描述

用户控制器的代码:

const { create } = require("./user.service");

const { genSaltSync, hashSync } = require("bcrypt");

const bcrypt = require("bcrypt");

module.exports = {

    createUser: (req, res) => {
        const body = req.body;
        const salt = genSaltSync(20);
        body.password = hashSync(body.password, salt);
        create(body, (err, results) => {
            if (err) {
                throw err;
                return res.status(500).json({
                    success: 0,
                    return: "Database connection error"
                });
            }
            return res.status(200).json({
                success: 1,
                data: results
            });
        });
    }
}

以下是我得到的错误: -

   错误:在 createUser (E:\node\api\users\user.controller.js:12:25)    处
   的 hashSync (E:\node\node_modules\bcrypt\bcrypt.js:91:15)需要数据和盐参数Layer.handle [as handle_request] (E:\node\node_modules\express\lib\router\layer.js:95:5)    在下一个 (E:\node\node_modules\express\lib\router\route.js:137 :13)    在 Route.dispatch (E:\node\node_modules\express\lib\router\route.js:112:3)    在 Layer.handle [as handle_request] (E:\node\node_modules\express\lib\router \layer.js:95:5)    在 E:\node\node_modules\express\lib\router\index.js:281:22    在 Function.process_params (E:\node\node_modules\express\lib\router\index.js) js:335:12)    在下一个 (E:\node\node_modules\express\lib\router\index.js:275:10)








   在 Function.handle (E:\node\node_modules\express\lib\router\index.js:174:3)

标签: javascriptnode.jsexpress

解决方案


推荐阅读