首页 > 解决方案 > 使用 socket.io-client 处理数据

问题描述

我正在尝试使用 socket.io-client 将数据发送到服务器,但它不起作用。

套接字代码:

var noble = require('noble');
var beacon_descover = require('./beacon_descover.js');
var io = require('socket.io-client')
var socket = io.connect('http://localhost:8080', {reconnect: true});
var addressToTrack = 'x.x.x.x ';

socket.on('connect', function(){
console.log('connected to server');
});

noble.on('discover', function(peripheral){
if(peripheral.uuid == addressToTrack){
socket.emit('deviceData', {mac: peripheral.uuid, rssi:peripheral.rssi});
}
});

noble.startScanning([], true)

我得到了这个 Eroor

 Error: Could not start scanning, state is unknown (not poweredOn)

在 Noble.scan 在 Noble.startScanning ... 有谁知道我该如何解决?

标签: javascriptnode.jssocket.io

解决方案


是的,这是一个高尚的问题。我解决了:

if(noble.state === 'poweredOn'){
    scanStart()
}else{

    noble.on('stateChange', scanStart)
}

谢谢你的建议。


推荐阅读