Node.JS将JSON附加到数组

时间:2016-08-11 21:42:20

标签: javascript json node.js

我需要将JSON数据附加到JSON文件中的数组中。它成功追加。但是,它不会附加在JSON文件中的Brackets内部

这是我的 NODE

 if (req.method == 'POST') {
    req.on('data', function (chunk) {
        fs.writeFile("comments-data.json", chunk, {'flag':'a'}, function(err) {
            if(err) {
                return console.log(err);
            }

            console.log("The file was saved!");
        })
    });
    res.end('{"msg": "success"}');
};

我怎么能告诉它只是附加在括号内?

1 个答案:

答案 0 :(得分:1)

您必须在请求和文件中解析JSON,将请求数据推送到数组,然后将其写回文件。

if (req.method == 'POST') {
    req.on('data', function(chunk) {
        var element = JSON.parse(chunk);
        fs.readFile("comments-data.json", 'r', function(err, json) {
            var array = JSON.parse(json);
            array.push(element);
            fs.writeFile("comments-data.json", JSON.stringify(array), "w", function(err) {
                if (err) {
                    console.log(err);
                    return;
                }
                console.log("The file was saved!");
            });
        });
        res.end('{"msg": "success"}');
    });
}