2017-12-08 5 views
1

私はapi.bitfinex.com/wsから簡単なwebsocket APIを使用して、BTC/USD市場でストリームを変更しています。 私はシンプルなcsvファイルを更新するためにこれをどうやって作っているのですか?それでは、wsから新しいデータを受け取り、csvを更新してください。 私はfast-csvを使用しようとしますが、成功しません。 CSVファイルにストリーミングする方法は、任意の考え、したがってwebsocketストリームからノー​​ドjsでCSVファイルを更新する必要があります

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.. 
     } 
    }; 

(行1、列2でBTCUSDと、行2列2などでETH)

答えて

0

のように思われる:ここ は自分のノードJSコードでありますあなたは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!`) 
    }) 
関連する問題