Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 直接从React应用程序中的Winston日志文件流_Javascript_Node.js_File_Reactjs_Winston - Fatal编程技术网

Javascript 直接从React应用程序中的Winston日志文件流

Javascript 直接从React应用程序中的Winston日志文件流,javascript,node.js,file,reactjs,winston,Javascript,Node.js,File,Reactjs,Winston,在我的节点后端,我创建了一个winston JSON日志文件(更像是一个JSON对象数组)。我有一个react前端,我想在其中实时流式传输日志文件内容。如果不通过我的后端进行管道传输,这是可能的吗?是的,您可以这样做,但这确实会降低Web服务器的性能。只有一种方法可以在不通过后端管道的情况下完成,您可以通过在特定的时间间隔向web服务器发送HEAD请求来完成 香草JavaScript代码: var xhr = new XMLHttpRequest(); var intervalMs = 500;

在我的节点后端,我创建了一个winston JSON日志文件(更像是一个JSON对象数组)。我有一个react前端,我想在其中实时流式传输日志文件内容。如果不通过我的后端进行管道传输,这是可能的吗?

是的,您可以这样做,但这确实会降低Web服务器的性能。只有一种方法可以在不通过后端管道的情况下完成,您可以通过在特定的时间间隔向web服务器发送HEAD请求来完成

香草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);
var xhr=new-XMLHttpRequest();
var区间=500;
var lastTime=new Date().getTime();
var intervalObj=window.setInterval(函数(){
xhr.open('头部','http://localhost:80/logfile.log');
xhr.onreadystatechange=函数(){
if(this.readyState=this.DONE)
{
让lastModifiedStr=this.getResponseHeader('Last-Modified');
var lastModifiedTimeStamp=新日期(lastModifiedStr).getTime();
log(“上次修改”,lastModifiedTimeStamp)
if(lastTime
您是否希望其他没有该文件的人看到它?是的,您是对的,如果不通过后端管道传输它,这是不可能的。