[英]Need help writing json data to json file in a GET function for a REST api
我对json真的很陌生,在写入文件时遇到了麻烦。 我正在尝试在REST API中编写GET函数,该函数将从URL获取信息并将其保存到json文件。 我尝试获取的URL有3个组成部分。 该函数已成功获取信息,但是我不确定如何将其保存到json文件中。 这是我的下面的代码。
app.get('/user', function(req, res){
response = {
id : req.query.id,
hash : req.query.hash,
size : req.query.size
};
console.log(response);
//var fs = require('fs');
//var obj = JSON.parse(fs.writeFileSync('userdata.json', 'utf8'));
//res.status(200).json(obj);
//res.end(JSON.stringify(response));
});
代码以json格式正确打印到终端,但是我在保存数据时遇到问题。 谢谢您的帮助。 非常感谢。
fs.writeFile('jsonData.json', JSON.stringify(response), function(err) {
if (err) {
console.log('Error found : ' + err.message);
} else {
//do the rest
}
});
您可以使用2种方法来实现
1)通过创建手动json文件并触发click事件:
function download() {
var fileContents=JSON.stringify(jsonObject, null, 2);
var fileName= "filejson.json";
var pp = document.createElement('a');
pp.setAttribute('href', 'data:text/plain;charset=utf-8,' +
encodeURIComponent(fileContents));
pp.setAttribute('download', fileName);
pp.click();
}
setTimeout(function() {download()}, 500);
2)使用写文件流:
obj = JSON.parse(data); //now its an object
json = JSON.stringify(obj); //convert it back to json
fs.writeFile('myjsonfile.json', json, 'utf8', function(err) {
console.log(err); // if there is an error
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.