搭建简易的物联网服务端和客户端-Nodejs_net(二)
时间:2022-07-23
本文章向大家介绍搭建简易的物联网服务端和客户端-Nodejs_net(二),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
服务端慢慢完善中,一步一步记录学习 代码地址:https://github.com/klren0312/stm32_wifi 2017.3.17
Nodejs TCP 服务端和客户端
用客户端模拟STM32发送过来的字符串。主要是为了解决对字符串的处理。
1.客户端代码
const net = require('net')
const client = net.connect({port:4001},() => {//向服务端发送
console.log("connected to server!");
client.write("{"tem":"20","hum":"80"}");
});
client.on('data',(data) => {//从服务端接受
console.log(data.toString());
client.end();
});
client.on('end',() => {//断开连接
console.log('disconnected from server');
})
发送的字符串是json格式:"{"tem":"20","hum":"80"}"
3.服务端代码
var net = require('net')
net.createServer(function(socket){
socket.on('data',function(data){//接受服务端数据
console.log('got:',data.toString());
var text = JSON.parse(data.toString());//将接收到的字符串转换成json对象
console.log(text);//获取json对象
console.log(text.tem);//获取tem的值
console.log(text.hum);
});
socket.on('end',function(data){
console.log('end');
});
socket.write('Ready to receive your message!')
}).listen(4001);
@治电小白菜 20170317
- 如何通过Livy的RESTful API接口向Kerberos环境的CDH集群提交作业
- 如何使用Oozie API接口向非Kerberos环境的CDH集群提交Spark作业
- Joomla 权限提升漏洞(CVE-2016-9838)分析
- Firefox - SVG cross domain cookie vulnerability
- 当代 Web 的 JSON 劫持技巧
- 利用特殊协议加载本地文件, 绕过 HTML5 沙箱, 打开弹窗诸事
- Nginx权限提升漏洞(CVE-2016-1247 )分析
- 初识 Fuzzing 工具 WinAFL
- 如何使用Oozie API接口向Kerberos环境的CDH集群提交Spark2作业
- 如何编译及使用TPC-DS生成测试数据
- ASP.NET MVC编程——缓存
- ASP.NET MVC编程——错误处理与日记
- Jenkins 未授权远程代码执行漏洞(CVE-2017-1000353)
- ASP.NET MVC编程——路由
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 搭建 Apache Jmeter 分布式压测与监控,真那么难搞定?|实战干货
- PAT (Basic Level) Practice (中文)1056 组合数的和
- PAT (Basic Level) Practice (中文)1057 数零壹
- PAT (Basic Level) Practice (中文)1063 计算谱半径
- PAT (Basic Level) Practice (中文)1064 朋友数
- PAT (Basic Level) Practice (中文)1076 Wifi密码
- PAT (Basic Level) Practice (中文)1077 互评成绩计算
- PAT (Basic Level) Practice (中文)1081 检查密码
- PAT (Basic Level) Practice (中文)1082 射击比赛
- PAT (Basic Level) Practice (中文)1083 是否存在相等的差
- 2017年天梯赛全国总决赛题集 L2-1 点赞狂魔
- 2017年天梯赛全国总决赛题集 L1-4 稳赢
- 2017年天梯赛全国总决赛题集 L1-8 矩阵A乘以B
- 你真的了解synchronized吗?
- 2017年天梯赛大区赛题集 7-1 出生年