gpt4 book ai didi

javascript - 需要使用 Node js 从 websocket 流更新 CSV 文件

转载 作者:行者123 更新时间:2023-11-29 23:29:50 25 4
gpt4 key购买 nike

我有来自 api.bitfinex.com/ws 的简单 websocket API,可以流式传输 BTC/USD 市场上的变化。我正在努力如何使它更新简单的 csv 文件,所以当从 ws 接收新数据以更新 csv 时。我尝试使用 fast-csv,但没有成功。这是我的 Node js 代码:

    const WebSocket = require('ws');
const ws = new WebSocket("wss://api.bitfinex.com/ws");

const fs = require('fs');

ws.onopen = function(){
ws.send(JSON.stringify({'event':'subscribe', 'channel':'ticker', 'pair':'btcusd'}))
};

ws.onmessage = function(msg){

var response = JSON.parse(msg.data);
if (response[1] !="hb"){
console.log("Bitfin " + response[7]);
//HERE I need to update existing CSV file,
//for example
//BTC,xxxx
//ETH,xxxx
//two columns, and n rows..
}
};

所以,知道如何将数据流式传输到 csv(第 1 行第 2 列中的 BTCUSD;第 2 行第 2 列中的 ETH 等)

最佳答案

在我看来,您应该使用 writeStream。类似的东西:

  const fs = require('fs')
let writeStream = fs.createWriteStream(fileName)

ws.onmessage = function(msg){
//... your code ...
writeStream.write(msg)
}

writeStream.on('finish', () => {
console.log(`Finished writing!`)
})

关于javascript - 需要使用 Node js 从 websocket 流更新 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47717736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com