做爰高潮a片〈毛片〉,尤物av天堂一区二区在线观看,一本久久A久久精品VR综合,添女人荫蒂全部过程av

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

nodejs簡單實現TCP服務器端和客戶端的聊天功能示例

來源:懂視網 責編:小采 時間:2020-11-27 22:22:08
文檔

nodejs簡單實現TCP服務器端和客戶端的聊天功能示例

nodejs簡單實現TCP服務器端和客戶端的聊天功能示例:本文實例講述了nodejs簡單實現TCP服務器端和客戶端的聊天功能。分享給大家供大家參考,具體如下: 服務器端 var net = require('net'); var server = net.createServer(); //聚合所有客戶端 var sockets = []; //接受新的客戶端連接
推薦度:
導讀nodejs簡單實現TCP服務器端和客戶端的聊天功能示例:本文實例講述了nodejs簡單實現TCP服務器端和客戶端的聊天功能。分享給大家供大家參考,具體如下: 服務器端 var net = require('net'); var server = net.createServer(); //聚合所有客戶端 var sockets = []; //接受新的客戶端連接

本文實例講述了nodejs簡單實現TCP服務器端和客戶端的聊天功能。分享給大家供大家參考,具體如下:

服務器端

var net = require('net');
var server = net.createServer();
//聚合所有客戶端
var sockets = [];
//接受新的客戶端連接
server.on('connection', function(socket){
 console.log('got a new connection');
 sockets.push(socket);
 //從連接中讀取數據
 socket.on('data', function(data){
 console.log('got data:', data);
 //廣播數據
 //每當一個已連接的用戶輸入數據,就將這些數據廣播給其他所有已連接的用戶
 sockets.forEach(function(otherSocket){
 if (otherSocket !== socket){
 otherSocket.write(data);
 }
 });
 //刪除被關閉的連接
 socket.on('close', function(){
 console.log('connection closed');
 var index = sockets.indexOf(socket);
 sockets.splice(index, 1);
 });
 });
});
server.on('error', function(err){
 console.log('Server error:', err.message);
});
server.on('close', function(){
 console.log('Server closed');
});
server.listen(4000);

客戶端

var net = require('net');
var port = 4000;
var quitting = false;
var conn;
var retryTimeout = 3000; //三秒,定義三秒后重新連接
var retriedTimes = 0; //記錄重新連接的次數
var maxRetries = 10; //最多重新連接十次
process.stdin.resume(); //process.stdin流來接受用戶的鍵盤輸入,這個可讀流初始化時處于暫停狀態,調用流上的resume()方法來恢復流
process.stdin.on('data', function(data){
 if (data.toString().trim().toLowerCase() === 'quit'){
 quitting = true;
 console.log('quitting');
 conn.end();
 process.stdin.pause();
 } else {
 conn.write(data);
 }
});
//連接時設置最多連接十次,并且開啟定時器三秒后再連接
(function connect() {
 function reconnect() {
 if (retriedTimes >= maxRetries) {
 throw new Error('Max retries have been exceeded, I give up.');
 }
 retriedTimes +=1;
 setTimeout(connect, retryTimeout);
 }
 conn = net.createConnection(port);
 conn.on('connect', function() {
 retriedTimes = 0;
 console.log('connect to server');
 });
 conn.on('error', function(err) {
 console.log('Error in connection:', err);
 });
 conn.on('close', function() {
 if(! quitting) {
 console.log('connection got closed, will try to reconnect');
 reconnect();
 }
 });
 //打印
 conn.pipe(process.stdout, {end: false});
})();

希望本文所述對大家nodejs程序設計有所幫助。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

nodejs簡單實現TCP服務器端和客戶端的聊天功能示例

nodejs簡單實現TCP服務器端和客戶端的聊天功能示例:本文實例講述了nodejs簡單實現TCP服務器端和客戶端的聊天功能。分享給大家供大家參考,具體如下: 服務器端 var net = require('net'); var server = net.createServer(); //聚合所有客戶端 var sockets = []; //接受新的客戶端連接
推薦度:
標簽: 簡單 實現 nod
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 贵德县| 伊金霍洛旗| 五常市| 延川县| 曲靖市| 高邮市| 安丘市| 郧西县| 巴南区| 台江县| 双峰县| 高要市| 舞阳县| 罗田县| 福清市| 响水县| 芮城县| 平遥县| 莎车县| 华阴市| 崇左市| 宁远县| 射阳县| 五家渠市| 泸州市| 清丰县| 固阳县| 平陆县| 潮安县| 盘锦市| 泾川县| 疏勒县| 婺源县| 乌拉特中旗| 五华县| 崇文区| 三台县| 正镶白旗| 巴中市| 中超| 博白县|