ソケットのビジネスロジック
サーバーのロジック
1は、ネットモジュールの導入は、永続的な接続ネットモジュールとして、サーバーを作成するときに、HTTPモジュール非永続的な接続
2、新しいサーバ、ポート番号の確立を作成するには
、ユーザーは前に来リンクする、3の接続方法でユーザIDを受信するための第1の配列を定義した後、ユーザーのユーザーフレンドリーなセットは、ユーザを追加するためにユーザに方法プッシュ停止送信情報を切断
して、ユーザを介して送信されるデータを受信するためのclient.on方法に使用されるメッセージ4を、ユーザが、存在する場合、メッセージ通過するアレイを介して地図ループ
5、ユーザの切断、ユーザIDクリア
クライアントロジック
1、ネットモジュールの導入
2は、端末内のファイルの読み取りと書き込み、読み出しと書き込みのreadlineストリームファイルの中に導入することができ
、サーバの作成、3
のreadlineを通じて、4。createfaceファイル入出力作成
5、接続を介してサーバクライアント接続を、3つのパラメータがあり、ポート番号、IPアドレス、およびコールバック意志チューン離れサーバを介して送信メッセージの受信のためにされている
ライン法を用いて、6 client.writeでメッセージを送信し、ファイルを受信
サーバー
//サーバーserver.js constのインクルードがネット=( "ネット")//そう持続的接続を使用してnetモジュールのhttp非永続的な接続モジュールを必要と CONST = net.createServerサーバーを(); server.listen(9000); のconst =クライアント[] //ユーザが何をサーバに接続するとき server.onを(「接続」、(クライアント)=> { //すべてのクライアントが配列に格納され、メッセージは、ときに、メッセージ受信されます過去のすべてのユーザーに送信 client.id = client.length; clients.push(クライアント); はconsole.log(「誰かが接続を来た」); //クライアントは、渡されたメッセージの受信 client.on(「データ」を、(データ)=> { //console.log(data+ "") //は、すべてのユーザにこのメッセージを送信し clients.map((項目)=> { IF(項目){ item.write(データ)。 } }) }) //場合、クライアントが切断、彼は、配列から削除され client.on( "クローズ"、()=> { クライアント[client.id] = NULL }) })
クライアント
//クライアントがClient.js のconst NETを=必要(「NET」); のconst =のreadline(「readlineの」)が必要です。ファイルの書き込み端末で読み取ることができる//ファイルストリームを作成する のconstクライアント=新しいnet.Socketを( ); CONST = RLはreadline.createInterfaceある({ INPUT:process.stdin、 出力:proess.stdout }) //テキストファイルの文字バッファを変換 client.setEncoding( "UTF8") // connectメソッドのパラメータを使用してサーバへのクライアント接続1:のポート番号パラメータの2 IPアドレス client.connect(9000、 "127.0.0.1"、()=> { //client.write("123 "); //サーバが渡されたメッセージの受信 client.onを("データ"(データ)=> { にconsole.log(データ) }) }); //私たちが読んで、端末にファイルを書き込む rl.on("ライン」、(テキスト )=>{ //メッセージ送信 client.write(テキスト); })