gpt4 book ai didi

javascript - 如何在回调函数中使用express response.send(以mysqljs在nodejs中的使用为例)

转载 作者:行者123 更新时间:2023-11-30 20:59:07 26 4
gpt4 key购买 nike

我在 express 中使用 express 和 mysqljs。如果我请求我的数据库添加用户,我必须定义一个回调函数来处理响应。不幸的是,我无法在回调函数中表达 res.send。我想将 insertID 发送到 res.send 方法。我该怎么做?这是我的代码。

app.post("/adduser", (req, res) => {
const con = mysql.createConnection({
host: "localhost",
user: "root",
password: "",
database: "customer"
});
const name = req.body.name;
const age = req.body.age;

const users = { name: name, age: age };
const query = "INSERT INTO users SET ?";
con.query(query, users, (err, res) => {
if (err) throw err;
console.log("Last insert ID:", res.insertId);
// want to send res.insertId to server
// res.send() here
});

});

最佳答案

我猜你对“response”和“result”使用了相同的变量名“res”。

如文档所述,con.query 返回“result”而不是“res”。 https://github.com/mysqljs/mysql#performing-queries

app.post("/adduser", (req, res) => {
const con = mysql.createConnection({
host: "localhost",
user: "root",
password: "",
database: "customer"
});
const name = req.body.name;
const age = req.body.age;

const users = { name: name, age: age };
const query = "INSERT INTO users SET ?";
con.query(query, users, (err, result) => {
if (err) throw err;
console.log("Last insert ID:", result.insertId);
// want to send result.insertId to server
// res.send() here

// res.send(result.insertId); // gives an error
res.send(result.insertId.toString());
});

});

关于javascript - 如何在回调函数中使用express response.send(以mysqljs在nodejs中的使用为例),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47301798/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com