- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我有这个示例 Node.js 脚本:
var mdns = require('mdns');
var browser = mdns.createBrowser(mdns.tcp('http'));
browser.on('error', function (error) {
console.log("error");
console.log(error);
});
browser.on('serviceUp', function (service) {
console.log("serviceUp");
console.log(service);
});
browser.start();
在我的 Mac 上它运行良好,并且找到了两个服务。如果我在运行 Raspbean(连接到同一网络)的 Raspberry PI 2 上运行完全相同的脚本,我会得到以下输出:
pi@raspberrypi ~ $ node mdns.js
*** WARNING *** The program 'node' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node>
*** WARNING *** The program 'node' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=node&f=DNSServiceRegister>
error
{ [Error: getaddrinfo -3008] code: -3008, errno: -3008, syscall: 'getaddrinfo' }
error
{ [Error: getaddrinfo -3008] code: -3008, errno: -3008, syscall: 'getaddrinfo' }
一个 issue on the mdns GitHub , 表示忽略警告是公平的。
但是这两个错误呢?这是我的 Raspberry PI 上的某种配置问题吗?
最佳答案
在本地修改 Node 模块代码是一种不好的做法。
在创建 mdns 浏览器时最好做到以下几点:
var sequence = [
mdns.rst.DNSServiceResolve(),
'DNSServiceGetAddrInfo' in mdns.dns_sd ? mdns.rst.DNSServiceGetAddrInfo() : mdns.rst.getaddrinfo({families:[4]}),
mdns.rst.makeAddressesUnique()
];
var browser = mdns.createBrowser(mdns.tcp('http'), {resolverSequence: sequence});
就像这条评论中所说的:https://github.com/agnat/node_mdns/issues/130#issuecomment-120731155
因此,它将避免错误并允许从事该项目的每个人都获得相同的版本,而不必修改本地 mdns 代码。
关于node.js - 树莓派 mdns getaddrinfo 3008 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29589543/
Windows(一些现代风格)是否默认安装和/或运行 mDNS 服务器?如果是这样,那么如何告诉它(最好是动态地)开始/停止广告新服务? 如果没有标准,那么如何处理尝试在该环境中运行多个 mDNS 服
首先,一些背景知识:avahid 在我的嵌入式 Linux 设备上给我带来了问题(它有一些崩溃的错误,看起来不会很快得到修复),而且我只需要最少的 mDNS 功能(即足以让 Mac 或 PC 上的人可
这就是我想要实现的目标。我有一个带有内置打印机的 android 设备,我可以通过串行接口(interface)访问它。 Play 商店中有 2 个我希望使用和打印的应用程序。这些应用程序仅允许通过以
我可以通过在 Google Chrome 中启用 -enable-webrtc-hide-local-ips-with-mdns 标志来使用 WebRTC 的 mDNS 功能。但经过长时间的调查,我无
我的 ESP8266 主机名有问题。我正在使用 MDNSResponder,并且可以使用 mydevice.local 成功访问我的设备 但是,我的 WiFi 路由器 (Netgear WGR614)
我有一个开发网络服务器托管为“myhost.local”,它是使用 Bonjour/mDNS 找到的。服务器正在运行 avahi-daemon。 网络服务器还希望处理其自身的任何子域。例如“cat.m
我们在网络上有一些设备(如网络摄像机)。我正在用 C 语言编写 API 来查找这些相机。这些摄像机支持组播 DNS 查询。我有查询的格式,但我没有通用的响应格式。这样我就可以编写可以解析 MDNS 查
我正在寻找解决 .local 主机名与 Android 4.0.4(没有 NSD,由于 API 级别 15)的解决方案。在设备上我没有任何服务可以发现,只有主机名。能否请您举例说明如何解决?我集成了j
我正在尝试使用“网络服务发现”API 在 Android 应用程序中访问 mDNS TXT 记录。基本上我的应用程序需要发现服务并从中访问 TXT 记录。 如何从 android 网络服务发现 API
我正在尝试在 LAN 中运行 HTTP 服务器,并希望使用另一台台式计算机上的浏览器访问它。由于我不喜欢手动输入 IP 地址和端口,因此我尝试使用 jmDNS 设置 mDNS。 Str
我一直在研究使用 mDNS 从 JavaScript 应用程序中发现服务。基本思想是向 exampleservice.local 发出 AJAX 请求,然后返回包含相关信息的 JSON。 由于应用程序
以前,如果安装了 iTunes,Windows 只会解析多播 DNS 地址(例如,example.local)。在最近的 Windows 版本中,这仍然是正确的还是发生了变化? (我几年前就放弃了 W
当您安装 Bonjour for Windows 时,您可以从系统中的任何位置解析任何“.local”mDNS 名称。 例如,您可以“ping some_computer.local”,mDNSRes
我们需要使用域名在本地连接 Rasberry PI 设备。为此,我们已经在 Rasberry PI 设备中启用了 mDNS 支持。当我们从 flutter 中寻找 mDNS 时 mDNS flutte
我正在尝试创建一个基于 ubuntu 17.04 的 docker 容器,该容器可以浏览我的网络(docker 网络之外)上的 mDNS,并在 mDNS 上向我的网络(docker 网络之外)做广告。
我有一个物联网设备破坏了 mDNS 响应器,有没有办法通过 react-native/Expo 应用程序找到该设备? 我找到了一个 react-native 库 ( react-native-zero
如何在 Android Chrome 浏览器地址栏中获取 mDNS 名称 (test.local) 解析为 ip 地址? 在 Windows 中安装 Bonjour 服务后,它可以在 Chrome 浏
我的目标是从 Windows 计算机发现本地网络中 Linux 计算机“服务器”的 IP 地址。从另一台 Linux 计算机“客户端”我可以做: ping -c1 server.local 并得到回复
我注意到一些更好的网络发现应用程序,例如适用于 iOS 的 Fing 和适用于 Mac 的 iNet,即使它们没有宣传 Bonjour 服务(例如 iTunes Wi-Fi Sync),也能够发现 i
我正在使用 this example chrome app作为浏览 mDNS 的基础。它运行良好,并为我提供了服务提供者的服务名称和 IP,但我无法找到人类可读的服务实例名称。 最佳答案 我有一段时间
我是一名优秀的程序员,十分优秀!