gpt4 book ai didi

javascript - 我如何在 NodeJS 中解决 "TypeError: Converting circular structure to JSON"

转载 作者:行者123 更新时间:2023-11-29 05:47:40 27 4
gpt4 key购买 nike

我正在使用 React。为了从我的 MySQL 数据库中查询一些数据,我创建了另一个 NodeJS 后端服务器并执行了这段代码。

  var con = mysql.createConnection({
host: "localhost",
port: "3306",
database: "my_books",
user: "root",
password: "pokemon2345"
});
con.connect();

var sql = JSON.parse(req.query.msg);
console.log(sql);
var answer = con.query(sql);
con.end();
res.send(JSON.stringify(answer));

这是我在 React 主应用程序中的代码。

    var request = new XMLHttpRequest();
var jsql = JSON.stringify(sql);
request.onreadystatechange = function() {
debugger;
if (this.readyState == 4 && this.status == 200) {
var response = this.responseText;
toast.success(typeof response);
}
};
request.open(
"GET",
"http://localhost:3001/retrieve_books" + "?msg=" + jsql,
true
);
request.send(jsql);

我无法弄清楚为什么会发生此错误以及我的代码是如何循环的?提前致谢!

最佳答案

Circular JSON 意味着,对象内部有一个对象的引用,这使得 JSON.stringify 不可能。

在您的情况下,res.send(JSON.stringify(answer)) 可能是问题所在。 con.query(sql) 的响应可能不是一个简单的对象。

此外,该函数是异步的,需要回调来获得答案(我假设您使用的是 mysqljs https://github.com/mysqljs/mysql)

提供更多细节以进一步解释,但潜在的问题是变量“answer”的值

关于javascript - 我如何在 NodeJS 中解决 "TypeError: Converting circular structure to JSON",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58256628/

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