学习总结(二) node.js服务器如何使用net模块向硬件发送命令与接收数据?

服务器server.js:

const net = require("net"); //此模块用于tcp/ip通讯

当收到get请求时:

server.get("/cfjcApi/v1/SkyTempHudi", (req, res) => {

let client = new net.Socket();

client.connect(网络模块端口, 网络模块Ip, () => { //此模块需要设置好波特率等通讯参数

let cmd = dataCtl.makeCmd(0, parseInt("0XA1"), 0, []); //调用函数生成要发送的命令

client.write(cmd); //发送命令

client.on("data", function (data) { //当收到数据时

client.end(); //断开与485转网络模块的连接

return res.send({ result: Array.from(data), type: 1 }) //将收到的数据与设备类型发送至请求方

});

});

}

浏览器:

async function MeasureselectedStore() {

let res = await fetch(`http://192.168.0.163:3000/cfjcApi/v1/SkyTempHudi\`);

let json = await res.json();

let skytemphudi = json;

if (skytemphudi.type === 1) {//对应数据处理}

else if (skytemphudi.type === 2) {//对应数据处理}

}

这是测量通用设备的方式,不涉及根据设备位置查找设备类型.

测量某个位置的设备时,

服务器在res.query.storename中得到设备位置,然后根据设备位置去查找设备类型,然后发送

浏览器则fetch(`http://192.168.0.163:3000/cfjcApi/GrainTempHudi?storename=${storename}\`);

相关推荐
xinzheng新政13 小时前
Javascript 深入学习基础·4
javascript·学习·servlet
粥里有勺糖14 小时前
视野修炼-技术周刊第129期 | 上一次古法编程是什么时候
前端·javascript·github
whuhewei14 小时前
JS获取CSS动画的旋转角度
前端·javascript·css
蓝黑202014 小时前
Vue组件通信之v-model
前端·javascript·vue
charlie11451419114 小时前
通用GUI编程技术——图形渲染实战(二十九)——Direct2D架构与资源体系:GPU加速2D渲染入门
开发语言·c++·学习·架构·图形渲染·win32
像素之间14 小时前
为什么运行时要加set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve
前端·javascript·vue.js
CheerWWW14 小时前
C++学习笔记——线程、计时器、多维数组、排序
c++·笔记·学习
M ? A14 小时前
Vue转React实战:defineProps精准迁移实战
前端·javascript·vue.js·经验分享·react.js·开源·vureact
克里斯蒂亚诺·罗纳尔达14 小时前
智能体学习16——学习与适应(Learning-and-Adaptation)-深入解读
深度学习·学习·机器学习
w61001046614 小时前
CKA-2026-Service
linux·服务器·网络·service·cka