介绍
Zeroconf-redux 是一个基于 Zeroconf 协议实现的 npm 包。它可以帮助开发者在局域网内自动扫描和发现网络设备。该库依赖于 Redux 和 Bonjour。
重要提示:Zeroconf-redux 已经被列为废弃项目。推荐的替代方案是 mdns
。
安装
要使用 zeroconf-redux,您需要在终端中运行以下命令来安装它:
npm install zeroconf-redux
使用
1. 创建 Redux Store
首先,您需要创建 Redux store:
-- -------------------- ---- ------- ------ - ------------ --------------- - ---- -------- ------ --------------- ---- -------------- ------ - -------------------- - ---- ---------- ------ - ---------------- - ---- ------------------------- ------ - --------------- - ---- ----------------- ----- ------- - ----------------------- ----- ----- - ------------ ------------------------- -------------------------------- --------------------------- --
2. 初始化 Zeroconf
接下来,您需要在应用中初始化 Zeroconf。这可以通过zeroconf-redux
提供的connetZC
高阶组件实现,如下所示:
-- -------------------- ---- ------- ------ - --------- - ---- ----------------- ----- --------------- - ----- -- -- --------- ------------------------ --- ----- ------------------ - -------- -- -- ---------------- -- -- ---------------------------- --- ------ ------- -------------------------- -------------------------
3. 开始扫描
现在可以开始扫描了:
import { startMonitoring } from 'zeroconf-redux'; componentDidMount() { this.props.startMonitoring(); }
4. 获取已发现的服务
一旦 Zeroconf 发现了服务,您可以在您的组件中访问它们,如下所示:
this.props.services.forEach((service) => { console.log(service); });
这些服务对象包含有关设备名称、端口号、主机名以及其他有关设备的详细信息。
您还可以捕获 zeroconf-redux 插件所采用的事件:
dispatch({ type: SERVICE_FOUND, service, });
5. 停止监视
当您不再需要监视 Zeroconf 基础结构时,请通过调用stopMonitoring
方法来停止扫描:
import { stopMonitoring } from 'zeroconf-redux'; componentWillUnmount() { this.props.stopMonitoring(); }
总结
Zeroconf-redux 是一个方便易用的 npm 包,可以帮助前端开发者自动发现和监视局域网内的设备。我们一步一步地介绍了如何使用该库,包括创建 Redux store、初始化 Zeroconf、开始扫描和获取已发现的服务。通过掌握 Zeroconf-redux,您可以更轻松、更高效地发现您的网络设备。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/61211