xamarin - HttpListner 发现
问题描述
我正在 Xamain 上开发一个系统,每个设备都可以通过 HttpListner 创建网络服务,然后开始列出来自同一 LAN 网络上其他设备的传入呼叫。创建监听器后,我们可以在 URI 中应用命名约定,以便其他设备可以过滤掉不相关的服务。
问题是有没有办法发现同一局域网下所有具有给定服务前缀的主机(ip+port)?
我可以通过 NdsManager 类使用 Android 的设备特定代码然后调用 DiscoveringPeers() 来做到这一点,但我在想为什么在 .Net 中不可能有等效的功能?
解决方案
我使用 ZeroConf 作为实现多播客户端的灵感来源,现在一切都很好。最重要的是选择适合您网络的正确 IP 地址进行多播。请参阅此表 ( https://en.wikipedia.org/wiki/Multicast_address )。广播到 255.255.255.255 不是必需的行为,也不会被路由。
推荐阅读
- listview - Flutter - 如何访问 ListView.builder 中的一个元素?
- github - (GitHub Actions) 将步骤分成两个连续的步骤
- python - 使用for循环python将数据系列转换为数组
- reactjs - 在 CRA / TypeScript 中导入 mp3 文件
- python - TypeVar('T', A, B) 和 TypeVar('T', bound=Union[A, B]) 的区别
- java - 蒂卡空结果
- wordpress - 如何让 Wordpress 覆盖 nginx 中的 URL
- ios - Swift .SQLCLIENT 我怎样才能使完成无效?
- wordpress - 如何访问 vc_map() 内部值来为 WPBakery 界面创建自定义标记?
- .net - RDWeb 身份验证和 MFA 与 Azure