【发布时间】:2016-02-28 05:24:03
【问题描述】:
我需要将 csv 文件转换为 json 格式并将其发送到客户端,请求 nodejs 中的 ws 服务器,
文件会更新很多次,所以我需要将更新的数据发送给客户端
一旦数据完全加载,我就可以发送数据(比如当应用程序启动时,它会将文件中的所有数据发送到客户端)但是当我更新文件中的数据时,更新的数据正在控制台上打印出来,但不是发送给客户是他们在我的代码中的任何错误
我的 node.js 代码:
var ts = require('tail-stream');
var Converter = require("csvtojson").Converter;
var converter = new Converter({constructResult:false}); //for big csv data
var WebSocketServer = require('websocket').server;
var http = require('http');
var server = http.createServer(function(request, response) {
// process HTTP request. Since we're writing just WebSockets server
// we don't have to implement anything.
response.write('hello');
console.log('in http server \n');
});
server.listen(1337, function() { });
// create the server
wsServer = new WebSocketServer({
httpServer: server
});
// WebSocket server
wsServer.on('request', function(request) {
var connection = request.accept(null, request.origin);
console.log('wsserver');
connection.send('ws server');
converter.on("record_parsed", function (jsonObj) {
console.log(jsonObj); //here is your result json object
connection.send(jsonObj);
});
var tstream = ts.createReadStream('log.csv', {
beginAt: 0,
onMove: 'follow',
detectTruncate: false,
onTruncate: 'end',
endOnError: false
});
tstream.pipe(converter);
});
【问题讨论】:
标签: json node.js web-services csv