OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4408|回复: 1

介绍一种快速、简单的方法,创建TCP、UDP服务

[复制链接]

5

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2020-5-14
在线时间
18 小时
发表于 2020-5-14 17:49:46 | 显示全部楼层 |阅读模式
1金钱
有时候我们需要做项目的时候,需要通过TCPUDP协议和服务器交互。
我介绍一种基于nodejs”的方法,用几行代码 就可以创建TCP服务和UDP服务,完成硬件客户端和服务端的交互。
步骤一:首先是下载和安装nodejs,并配置环境变量。请参考  https://www.runoob.com/nodejs/nodejs-install-setup.html      
步骤 二:创建一个记事本文件,重新命名为server并把后缀名改为.js

创建文件

创建文件
步骤 三:打开server.js文件,编写代码,并保存代码

编写代码

编写代码

步骤 四:找到文件的根目录,按住shif键,鼠标定位到空白处,然后点击鼠标右键,选择“此处打开powershell 窗口”

打开powershell

打开powershell

步骤 五: powershell 窗口 输入 node server
5.png
6.png

步骤 六: 输入node server 后 按回车键 启动 服务
7.png

步骤 7:用TCP测试工具进行测试,并创建一个连接,由于服务是在创建在本地,所以输入本地IP:“127.0.0.1”  输入端口为:7777 然后点击创建。
9.png
10.png

步骤八:点击连接
11.png

步骤9:输入要发送的报文,然后点击发送
12.png

步骤10:服务端接收客户端,把客户端报文打印出来,且响应客户端
13.png

步骤11: 点击 断开连接, 服务器监听连接断开
16.png


步骤12:本地测试完成,把代码文件“server.js”上传到服务器, 服务器的地址为:47.107.99.203,监听端口7777
15.png


以上是用nodejs 简单的创建TCP服务的方法
TCP服务端代码
var net = require('net');
var server = net.createServer();

server.on('connection', (socket) => {

    socket.on('data', function(data) {
    var resData = Buffer.from('68010203','hex');
        if (data[0] == 0x68)
        {
            socket.write(resData);
        }
        console.log(data.toString('hex'));
    });

    socket.on('end', () => {
        console.log('客户端正常断开');
    });

   socket.on('error', function(err) {
        console.log('客户端异常断开');
    });
});
console.log("服务已经启动,监听7777端口");
server.listen(7777);

我还用nodejs做了一个“物联网系统” ,终端是通过TCP协议与服务端交互的, 有兴趣的同学可以去了解一下,这是系统的演示地址:http://47.107.99.203:8020/admin















14.png

最佳答案

查看完整内容[请看2#楼]

请发分享帖, 谢谢
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2020-5-14 17:49:47 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:41

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表