微信小程序中使用mdns api扫描局域网内的打印机
在微信的小程序api中,有个wx.startLocalServiceDiscovery(Object object),开始搜索局域网下的 mDNS 服务。它可以搜索局域网内的网络打印机。
下面的代码片段展示怎么使用该API扫描局域网内的打印机,核心代码如下:
data: {
services:[],
}
startMdns: function () {
var that = this
wx.showLoading({
title: '扫描中...',
})
wx.startLocalServiceDiscovery({
serviceType: '_http._tcp',
success: function (res) {
wx.onLocalServiceFound((result) => {
// 发现服务后,添加到services数组中
that.data.services.push(result)
})
},
fail: function (err) {
console.log(err)
}
})
// 设置超时函数,3500ms后结束扫描
setTimeout(() => {
wx.hideLoading({
success: (res) => {},
})
wx.stopLocalServiceDiscovery({
success: (res) => {
},
})
}, 3500);
},