nodejs socket实现的服务端和客户端功能示例
作者:lxhjh
这篇文章主要介绍了nodejs socket实现的服务端和客户端功能,结合具体实例形式分析了nodejs基于socket通信实现的服务端与客户端功能相关操作技巧,需要的朋友可以参考下
本文实例讲述了nodejs socket实现的服务端和客户端功能。分享给大家供大家参考,具体如下:
使用node.js的net模块能很快的开发出基于TCP的服务端和客户端。直接贴代码。
server.js
/**
* Created with JetBrains WebStorm.
* User: Administrator
* Date: 12-10-26
* Time: 下午3:44
* To change this template use File | Settings | File Templates.
*/
var net = require('net');
var timeout = 20000;//超时
var listenPort = 7003;//监听端口
var server = net.createServer(function(socket){
// 我们获得一个连接 - 该连接自动关联一个socket对象
console.log('connect: ' +
socket.remoteAddress + ':' + socket.remotePort);
socket.setEncoding('binary');
//超时事件
// socket.setTimeout(timeout,function(){
// console.log('连接超时');
// socket.end();
// });
//接收到数据
socket.on('data',function(data){
console.log('recv:' + data);
});
//数据错误事件
socket.on('error',function(exception){
console.log('socket error:' + exception);
socket.end();
});
//客户端关闭事件
socket.on('close',function(data){
console.log('close: ' +
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);
});
client.js
/**
* Created with JetBrains WebStorm.
* User: Administrator
* Date: 12-10-26
* Time: 下午3:56
* To change this template use File | Settings | File Templates.
*/
var net = require('net');
var port = 7003;
var host = '127.0.0.1';
var client= new net.Socket();
client.setEncoding('binary');
//连接到服务端
client.connect(port,host,function(){
client.write('hello my client');
});
client.on('data',function(data){
console.log('recv data:'+ data);
});
client.on('error',function(error){
console.log('error:'+error);
client.destory();
});
client.on('close',function(){
console.log('Connection closed');
});
希望本文所述对大家nodejs程序设计有所帮助。
您可能感兴趣的文章:
- 获取本机IP地址的实例(JavaScript / Node.js)
- nodejs获取本机内网和外网ip地址的实现代码
- 详解node HTTP请求客户端 - Request
- nodejs socket服务端和客户端简单通信功能
- Node.js中的http请求客户端示例(request client)
- 使用node.js 获取客户端信息代码分享
- NodeJS实现客户端js加密
- nodejs(officegen)+vue(axios)在客户端导出word文档的方法
- nodejs简单实现TCP服务器端和客户端的聊天功能示例
- node.js中express模块创建服务器和http模块客户端发请求
- 解决Node.js mysql客户端不支持认证协议引发的问题
- node获取客户端ip功能简单示例
