html5 eventSource 与node express 的问题

发布于 2022-09-02 15:08:14 字数 696 浏览 21 评论 0

我想用html5的EventSource做一个access实时日志,代码如下:

app.get('/access', function(req, res) {
        var access_file = fs.readFile('./access.log',{"enconding":"utf-8"}, function(err, data) {
            if(err) {
                console.log(err);
                return false;
            }
            var str = new Buffer(data);
            var str_array = str.toString().split("::");
            res.set({'Content-Type':"text/event-stream",'Cache-Control':'no-cache'});
            res.render('admin/access_page', {
                "user":req.session.user,
                "result": str_array 
            });
        });

});

改了Content-Type 以后就不能输出html了,如何才能得到想要的东西

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黑白记忆 2022-09-09 15:08:14

虽然是去年的问题,但还是回答下。
题主所述的 html 其实本质上也是字符串而已,而所谓的不能输出 html 是不存在的,只需按照 SSE 的指定格式传输 html 字符串即可:

//SSE传输数据的固定格式:“data:”+要传输的数据+"\n\n"
res.write("data:"+"这里填写html字符串"+"\n\n");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文