通过Java,在联网设备上调用Javascript函数?

时间:2010-01-07 21:59:05

标签: java javascript networking monitoring

我正在联网系统上进行设备监控。我需要知道如何通过其IP地址在该设备上进行Javascript调用以获取某些状态信息(此设备的状态仅可通过Javascript API而非SNMP等获得)。我在Java工作。

ADDED:具体设备是Amino机顶盒。它有它所谓的JMACX:JavaScript Media Access Control Extensions API规范。它允许您在HTML文档中使用该API来获取有关设备的大量信息(CPU使用情况,频道信息,远程控制选项等)。我需要在Java程序中获取此信息以用于特定的监视目的。

HTTP请求可能有可能吗?

非常感谢任何输入。

谢谢,

史蒂夫

2 个答案:

答案 0 :(得分:1)

因此,它本质上是一个提供HTML页面的网络服务器?理论上,您可以使用URL#openStream()获取InputStream任何网络资源。

但是你有一个Javascript的主要问题。它仅在本地计算机上运行。您最终可以借助HTML parser从HTML页面中提取JavaScript函数,并在javax.script API的帮助下调用它们,但它们只会在您的计算机上执行(at至少,运行Java代码的机器),而不是在远程机器上。

答案 1 :(得分:0)

我一直在Java中使用Rhino,效果很好。您应该能够将Javascript API加载到上下文中,然后创建函数以使用/调用该API。

http://www.mozilla.org/rhino/