我有一个示例 Chrome 打包应用程序,它使用 Chrome 套接字 API 来执行 DNS 服务发现。繁重的工作是从此处的示例中借用的:
https://github.com/GoogleChrome/chrome-app-samples/tree/master/mdns-browser
我只使用服务名称,例如 _pdl-datastream._tcp.local
(而不是默认的 _services._dns-sd._udp.local
)。
在我的 Ubuntu 和 Windows 设置(Chrome 25.0.1364.172)上,该应用程序可以成功找到我的网络打印机;我可以列出它的 IP 地址和服务实例名称。但是,它在我的 Samsung Chromebook (Chrome 25.0.1364.173) 上的 Chrome OS 中失败;什么都找不到。
知道问题出在哪里吗?这是一个已知问题吗?
最佳答案
您应该检查它是否是默认防火墙。默认情况下,在 Chromebook 上,我相信所有传入连接都被阻止。如果您在开发模式下运行,您可以执行以下操作以允许所有传入的 udp 流量来测试这是否是问题所在:
- 按 Ctrl+Alt+T 打开终端窗口并输入以下内容
- 贝壳
- sudo iptables -I INPUT -p udp -j ACCEPT
关于google-chrome-extension - Chrome 套接字 API 在 Chrome 操作系统(相对于 Ubuntu、Windows)上的行为不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15555657/