您的位置:首页 > Web前端 > Node.js

nodejs socket实现的服务端和客户端简单通信

2019-01-08 11:17 288 查看
                     

本文实例讲述了通过node.js的net模块实现nodejs socket服务端和客户端简单通信功能,可以用作客户端对服务端的端口监听以及事件回执。

server端代码

var net = require('net');//模块引入var listenPort = 8080;//监听端口var server = net.createServer(function(socket){  // 创建socket服务端  console.log('connect: ' +    socket.remoteAddress + ':' + socket.remotePort);  socket.setEncoding('binary');  //接收到数据  socket.on('data',function(data){    console.log('client send:' + data);  });socket.write('Hello client!\r\n'); // socket.pipe(socket);  //数据错误事件  socket.on('error',function(exception){    console.log('socket error:' + exception);    socket.end();  });  //客户端关闭事件  socket.on('close',function(data){    console.log('client closed!');     // socket.remoteAddress + ' ' + socket.remotePort);  });}).listen(listenPort);//服务器监听事件server.on('listening',function(){  console.log("server listening:" + server.address().port);});//服务器错误事件server.on("error",function(exception){  console.log("server error:" + exception);});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
client端代码
var net = require('net');var port = 8080;var host = '127.0.0.1';var client= new net.Socket();//创建socket客户端client.setEncoding('binary');//连接到服务端client.connect(port,host,function(){  client.write('hello server');  //向端口写入数据到达服务端});client.on('data',function(data){  console.log('from server:'+ data);  //得到服务端返回来的数据});client.on('error',function(error){//错误出现之后关闭连接  console.log('error:'+error);  client.destory();});client.on('close',function(){//正常关闭连接  console.log('Connection closed');});
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
运行结果如下

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: