我有一个现成的嵌入式以太网模块,用于监控外部电子系统。此以太网模块包括非常有限的Web服务器。此Web服务器不支持任何类标准脚本语言。要读取被监视系统的状态,我可以将非常具体的命令嵌入到HTML文件的注释中。提供文件时,服务器知道用请求的数据替换这些注释。通过这种方式,我可以通过浏览器查看系统的状态。
我的问题是:服务器只在提供HTML页面时提供更新的数据。无法执行异步请求。这使得实时数据基本上不可能;要获得有关系统状态的更新信息,我必须刷新整个页面。那是缓慢,低效和丑陋的。我想找到一种方法让我的状态页面更新。
我怀疑这将要求我使用Javascript异步请求包含所有有趣数据的第二个HTML页面,然后解析该文件并使用数据更新主页,所有这些都没有实际刷新我正在查看的页面。我不知道该怎么做,或者甚至可能。可以这样做吗?如果是这样,怎么样?
答案 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();