如何在没有服务器端脚本访问的情况下进行实时更新的网页?

时间:2013-08-27 13:20:23

标签: javascript html web

我有一个现成的嵌入式以太网模块,用于监控外部电子系统。此以太网模块包括非常有限的Web服务器。此Web服务器不支持任何类标准脚本语言。要读取被监视系统的状态,我可以将非常具体的命令嵌入到HTML文件的注释中。提供文件时,服务器知道用请求的数据替换这些注释。通过这种方式,我可以通过浏览器查看系统的状态。

我的问题是:服务器只在提供HTML页面时提供更新的数据。无法执行异步请求。这使得实时数据基本上不可能;要获得有关系统状态的更新信息,我必须刷新整个页面。那是缓慢,低效和丑陋的。我想找到一种方法让我的状态页面更新。

我怀疑这将要求我使用Javascript异步请求包含所有有趣数据的第二个HTML页面,然后解析该文件并使用数据更新主页,所有这些都没有实际刷新我正在查看的页面。我不知道该怎么做,或者甚至可能。可以这样做吗?如果是这样,怎么样?

1 个答案:

答案 0 :(得分:0)

只要两个HTML文件都存储在同一个位置(以避免CORS约束),就可以使用XMLHttpRequest完成。

有关如何使用XMLHttpRequest的示例,请查看this MDN article

高级视图将是:

// live webpage
var xhr = new XMLHttpRequest();
xhr.onload = function () { /* parse xhr.repsonseText */ };
xhr.onerror = function () { /* ... */ };

xhr.open('get', 'server-updated-page.html', true);
xhr.send();