通过相同的HTTP消息发送两个JSON

时间:2017-01-31 06:50:32

标签: javascript node.js http d3.js

我有一个Nodejs和d3.js程序,它们处理json数据,通过跨域发送并保存文件。我有两个JSON数组:节点链接。我需要将这些保存到另一个域中的文件中。在前端,我正在准备这样的http消息,

function sendLinks()
{
    jQuery(document).ready(function($)
    {
        $.ajax({
            type:'POST',
            url: 'http://192.168.80.143:2800/',
            data:JSON.stringify(links),
            contentType: "application/json; charset=utf-8",
            dataType: 'json',
            processData: false,
            error: function(data)
            {
                console.log("error", data);
            },
            success: function(data)
            {
                console.log("success", data);
            }
        });
    });
}

在服务器端,我有以下代码(nodejs)

    app.use(function(req, res) {
    //write a file
    fs.writeFile('links.json', JSON.stringify(req.body), function(err) {
        if(err) return console.log(err);
        console.log('File created > links.json');    
    });

    res.setHeader('Content-Type', 'application/json');
    res.write('Message taken: \n');
    res.end(req.body);
    res.send("OK");

});

我希望以不同的文件名(例如nodes.json)为节点 JSON数组执行此操作。我怎样才能做到这一点?我可以处理相同的http消息吗?

谢谢,

1 个答案:

答案 0 :(得分:0)

只需返回data: JSON.stringify({ links: links, nodes: nodes }),然后在服务器端正确解压缩。