2017-04-22 17 views
0

Nodeバックエンドでは、Winston JSONログファイル(Jsonオブジェクトの配列など)を作成します。私はログファイルのコンテンツをライブストリーミングしたい反応フロントエンドを持っています。これは私のバックエンドを通してパイプすることなく可能ですか?React App内のWinstonログファイルからのストリーム

+0

あなたはそれを見るために、そのファイルを持っていけない他の人を望んでいますか? – chris

+0

はい、これはバックエンドを通してパイプすることなく可能ではありません。 – DonKanallie

答えて

0

はい、できますが、実際にはWebサーバーのパフォーマンスが低下します。バックエンド経由で配管せずに実行する方法は1つしかありません.HTADリクエストを一定の間隔でWebサーバーに送信して実行できます。

バニラのJavaScriptコード:

var xhr = new XMLHttpRequest(); 
var intervalMs = 500; 
var lastTime = new Date().getTime(); 
var intervalObj = window.setInterval(function(){ 
    xhr.open('HEAD', 'http://localhost:80/logfile.log'); 
    xhr.onreadystatechange = function() { 
     if(this.readyState = this.DONE) 
     { 
      let lastModifiedStr = this.getResponseHeader('Last-Modified'); 
      var lastModifiedTimeStamp = new Date(lastModifiedStr).getTime(); 
      console.log("Last Modified",lastModifiedTimeStamp) 
      if(lastTime < lastModifiedTimeStamp) 
      { 
       lastTime = lastModifiedTimeStamp; 
       // Update your Redux State here and catch it with React and Update your UI 
      } 
     } 
    }; 
    xhr.send() 
}, intervalMs); 
関連する問題