我有兴趣在基于网络的设备上添加基于HTML/Web浏览器的“日志窗口”。具体来说,我的设备有一个自定义的Web服务器和一个事件日志,我希望能够让一个Web浏览器窗口打开,例如http://my.devices.ip.address/system_log,并在事件发生时将事件显示为Web浏览器窗口中的文本。然后人们可以使用它作为一种快速的方式来监视系统正在做什么,而不需要运行任何特殊的软件。如何在Web浏览器中实现日志窗口?
我的问题是,实现这个的最好方法是什么?我已经尝试了明显的方法 - 只需让我的设备的嵌入式Web服务器持续打开HTTP/TCP连接,并在发生事件时将必要的文本写入TCP套接字 - 但问题在于大多数Web浏览器(例如Safari)在服务器关闭之前不显示网页,TCP连接已关闭,因此结果是日志数据永远不会出现在Web浏览器中,它就像页面永远持续到加载。
是否有一些技巧可以使这项工作?我可以实现它作为一个Java小程序,但我更喜欢更轻量级/简单的东西,或者只使用HTML或可能使用HTML + JavaScript。此外,我想避免让Web浏览器“查询”服务器,因为这会引起太多延迟(如果重新载入延迟很大)或将负载放在系统上(如果延迟很小)