我已经读过其他一些这样的问题,但是没有人能正确解决我的问题。
我有一个空的json文件,名为apartments.json:
[]
我想在其中存储公寓清单。我从发布请求中检索了一个公寓,并且正在使用节点快递(v8.10)。这是代码:
router.post('/', (req, res, next) => {
let apa = {
id: req.body.id,
address: req.body.address
}
let apartments = require('path/to/json');
apartments.push(apa);
let str = JSON.stringify(apartments);
console.log(str);
)};
我想在更新后将新内容存储回apartments.json,问题是stringify()
返回[object Object]
。我已经尝试对公寓和apa进行分类,以进行测试,但这总是给我同样的东西
答案 0 :(得分:1)
对于将要遇到相同问题的每个人,这就是我解决此问题的方式:
router.post('/', (req, res, next) => {
let apa = {
id: req.body.id,
address: req.body.address
}
let apas = [];
let apartments = require('path/to/json');
apas.push(apa);
let str = "[ ";
for(let i = 0; i < apas.length - 1; i++) {
strAlt += '{"id": ' + apas[i].id + ', "name": "' + apas[i].name + '"}, ';
}
strAlt += '{"id": ' + apas[apas.length - 1].id + ', "name": "' + apas[apas.length - 1].name + '"} ] ';
console.log("stringify manuale: " + strAlt);
fs.writeFile(__dirname + "/../db/apartments.json", strAlt, (err) => {
if(err) throw err;
console.log("file saved!");
});
console.log(apartments);
res.status(200).send(apa);