【问题标题】:Bonjour Discovery in Javascript? Maybe?Javascript 中的 Bonjour 发现?可能是?
【发布时间】:2010-12-22 03:25:15
【问题描述】:

所以它是一个远射,我会从那个开始。

是否/是否有可能仅在 javascript 中发现 bonjour 广告的 HTTP 服务?

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

如果这是不可能的(我认为可能是这种情况,Javascript 是相当受限的)那么障碍是什么,有没有人知道如何克服这些障碍?

【问题讨论】:

    标签: javascript bonjour zeroconf


    【解决方案1】:

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

    有趣的是,您应该问:我一直致力于将这种功能引入 Web 浏览器。我在这项工作中的成功之一是NPAPI mDNS plugin for Chrome。该插件基本上与 Avahi ZeroConf(mDNS - 多播 DNS 服务器)接口。

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

    更新:希望通过W3C Service Discovery

    【讨论】:

    • 这听起来真的很有用!你能被说服将服务正式化吗?我认为我可以开发一个外部 ruby​​ 应用程序,它可以在 Mac OS 上提供相同的服务 - 继续运行会有点麻烦,但它适用于所有浏览器。
    • 通过 W3C 服务发现不再有希望:" 对本文档的工作已停止,不应引用或用作实施的基础。Presentation API 和 Remote Playback API 地址此 API 尝试解决的用例子集。“用例子集不包括服务发现。
    【解决方案2】:

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

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

    【讨论】:

    【解决方案3】:

    这个库声称用 Javascript 来做: http://quickconnect.sourceforge.net/browser/index.html

    我不得不承认,如果可以在 javascript 中发现 bonjour 服务,我会非常感兴趣 :)

    【讨论】:

    • 我看过这个,它仍然使用一些 Objective-C 将 iOS Bonjour 函数暴露给 Javascript。
    【解决方案4】:

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

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

    【讨论】:

    【解决方案5】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-18
      • 1970-01-01
      • 2012-01-30
      • 2014-02-12
      • 1970-01-01
      相关资源
      最近更新 更多