我正在网络系统上进行设备监控。我需要知道如何通过其 IP 地址在该设备上进行 Javascript 调用以获取某些状态信息(该设备的状态只能通过 Javascript API 获得,而不是 SNMP 等)。我正在使用 Java 工作。
添加:特定设备是 Amino 机顶盒。它有所谓的 JMACX:JavaScript 媒体访问控制扩展 API 规范。它允许您在 HTML 文档中使用该 API 来获取有关设备的大量信息(CPU 使用情况、 channel 信息、远程控制选项等)。我需要在 Java 程序中获取此信息以用于特定监控目的。
也许可以通过 HTTP 请求实现?
任何意见都将不胜感激。
谢谢
史蒂夫
最佳答案
因此,它本质上是一个提供 HTML 页面的网络服务器?理论上你可以使用 URL#openStream()
获取任何 Web 资源的 InputStream
。
但是 JavaScript 存在一个大问题。它仅在本地计算机上运行。您最终可以借助 HTML parser 从 HTML 页面中提取 JavaScript 函数。并在 javax.script
的帮助下调用它们API,但它们将仅在您的计算机上执行(至少是运行 Java 代码的计算机),而不是在远程计算机上执行。
关于java - 通过Java,调用联网设备上的Javascript函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2023973/