在Javascript中发现Bonjour?也许?

时间:2009-12-01 19:10:35

标签: javascript bonjour zeroconf

所以它是一个远景,我将从那开始。

是否可以单独在javascript中发现bonjour广告的HTTP服务?

为什么这会有用?想象一下本地服务正在寻找一些数据(例如您当前的纬度/经度),数据通过网络服务公开并由Bonjour Zeroconf做广告。一个(远程)网站可能想知道你当前的纬度/经度,而不是必须知道你正在运行 MyGPSserverVersion2 该网站可以使用javascript搜索当地bonjour _Compatible_location_services._tcp然后一旦有了IP地址就继续。

如果这是不可能的(我认为可能就是这种情况,Javascript是相当受限制的)那么障碍是什么,有没有人对如何克服它们有任何想法?

5 个答案:

答案 0 :(得分:8)

简短的回答是没有(至少在Linux平台上没有)。

有趣的是你应该问:我一直致力于将这种功能带到网络浏览器的范围内。我努力的一个成功NPAPI mDNS plugin for Chrome。该插件基本上与Avahi ZeroConf (mDNS - 多播DNS服务器)接口。

我目前正在开发另一个桥梁以弥补这一差距:桌面应用程序将使用“轻量级”数据库( a la CouchDb )来注册其HTTP端点。然后,扩展将从Javascript读取这些端点,并能够直接与广告服务进行交互。

更新:希望通过W3C Service Discovery

答案 1 :(得分:3)

这似乎可以使用Chrome的Sockets API,但我只是粗略看一下。

mdns-browser似乎使用所述API来实现这一点。

答案 2 :(得分:0)

此库声称在Javascript中执行此操作: http://quickconnect.sourceforge.net/browser/index.html

我必须承认,如果有可能在javascript中发现bonjour服务,我会非常感兴趣:)

答案 3 :(得分:0)

我知道这是一个旧线程。 找到这个github项目,它允许您使用mDNS发现(和发布)服务 - https://github.com/watson/bonjour

纯JavaScript中的Bonjour / Zeroconf协议实现。在本地网络上发布服务或使用多播DNS发现现有服务。

答案 4 :(得分:0)

这是 watson/bonjour javascript 代码的现代分支。这是在 TypeScript 中的。

https://github.com/onlxltd/bonjour-service

当然,这只适用于命令行节点应用程序,而不适用于网页。