局域网通信局域网怎么设置


基础库2.4.0提供了wx.startLocalServiceDiscovery等一系列mDNSAPI,可以用来获取局域网内提供mDNS服务的设备的IP。wx.request/wx.connectSocket/wx.uploadFile/wx.downloadFile的url参数允许为${IP}:${PORT}/${PATH}的格式,当且仅当IP与手机IP处在同一网段且不与本机IP相同(一般来说,就是同一局域网,如连接在同一个wifi下)时,请求/连接才会成功。

在这种情况下,不会进行安全域的校验,不要求必须使用https/wss,也可以使用http/ws。

基础库2.7.0开始,提供了wx.createUDPSocket接口用于进行UDP通信。通信规则同上,仅允许同一局域网下的非本机IP。

目前小程序只支持通过mDNS协议获取局域网内其他设备的IP。iOS上mDNSAPI的实现基于Bonjour,Android上则是基于Android系统接口。

由于操作系统相关能力变更,iOS微信客户端7.0.18及以上版本无法使用mDNS相关接口,安卓版本不受影响

发起mDNS服务搜索wx.startLocalServiceDiscovery的接口有serviceType参数,指定要搜索的服务类型。

serviceType的格式和规范,iOSBonjourOverview在BonjourNamesforExistingServiceTypes有提及。