const mqtt = require('mqtt'); const mysql = require('mysql2'); const connection = mysql.createConnection({ host: '10.186.132.64', port: '3306', user: 'ecology', password: 'k*SE^kYHnr6mgQcixCW7xoMJ', database: 'e10_common' }); // 连接到数据库 connection.connect((err) => { if (err) { console.error('数据库连接失败: ' + err.stack); return; } console.log('已连接到数据库,连接ID: ' + connection.threadId); }); let mqttClient; // 初始化MQTT客户端 mqttClient = mqtt.connect('mqtt://10.71.99.211:1883', { clientId: 'electron-mqtt-client', username: 'anning', password: '123456', clean: true }); mqttClient.on('connect', () => { console.log('MQTT connected'); // 可以在这里订阅主题 mqttClient.subscribe('/location/ZNAF_TOPIC_10034128/position', (err) => { if (!err) { console.log('Subscribed to some/topic'); } }); }); mqttClient.on('message', (topic, msg) => { // 处理接收到的消息 let data = JSON.parse(msg.toString()) const sql = `INSERT INTO uf_jcrydw ( cardId, layerId, x, y, move, lowPower, power, time, supplier, longitude, latitude, layernum, uniqueId, entId ) VALUES ( "${data.cardId}", "${data.layerId}", ${data.x}, ${data.y}, "${data.move}", ${data.lowPower}, "${data.power}", "${data.time}", "${data.supplier}", ${data.longitude}, ${data.latitude}, "${data.layernum}", "${data.uniqueId}", "${data.entId}" )`; connection.execute(sql, (err, results, fields) => { console.log(err) }); }); mqttClient.on('error', (err) => { console.error('error:', err); });