Javascript 节点writeFile未写入整个文件

Javascript 节点writeFile未写入整个文件,javascript,node.js,node-modules,Javascript,Node.js,Node Modules,我正在尝试读取一个csv文件并将内容写入一个新的csv文件,但在这样做时遇到了一些问题 我的代码似乎正在读取文件ok,如果我在控制台中记录body的结果,它将显示完整的文件。但是,当我尝试写入文件时,它似乎并没有写入所有内容 我使用的代码如下 var http = require('http'); var fs = require('fs'); var readfile = "http://datafeed.api.productserve.com/datafeed.csv"; var writ

我正在尝试读取一个csv文件并将内容写入一个新的csv文件,但在这样做时遇到了一些问题

我的代码似乎正在读取文件ok,如果我在控制台中记录body的结果,它将显示完整的文件。但是,当我尝试写入文件时,它似乎并没有写入所有内容

我使用的代码如下

var http = require('http');
var fs = require('fs');
var readfile = "http://datafeed.api.productserve.com/datafeed.csv";
var writefile = "app/data/file.csv";

http.get(readfile, function(response) {
    var body = '';
    response.on("data", function(chunk) {
        body += chunk;
    });
    response.on('end', function(){
        fs.writeFile(writefile, body, function(error) {
            if(error) {
                console.error("write error: " + error.message);
            } else {
                console.log('Successful');
            }
        });
    });
});
我做错什么了吗?或者你能写多少有什么限制吗


非常感谢您的帮助:)

我不太确定问题出在哪里,但您可以试试这个:body有多大,以字符为单位?一切都是异步发生的,我不相信writeFile是错误的,因为我尝试读取文件并写入本地csv文件,效果很好。请尝试fs.readFile(readFile,'utf8',function(err,response){console.log(“response”,response)fs.writeFile(writeFile,response,function(error){if(error){console.error(“write error:+error.message);}else{console.log('Successful');}}}});