構築物のインターネットサーバはnodejsに基づいています.

2748 ワード

偶然の機会で、今日はサーバーに接触しました.最初はサーバーの内容が分かりませんでした.今日は大体分かりました.
構築されたTCPサーバはキャリアとして、一部のハードウェアで取得されたデータを全部ネットワークに接続して、一つのインターフェースを通じて携帯電話または上位機に送ることができます.特定のIPアドレスを通じて.
携帯のライトを使いたいです.サーバーを通過することができます.構築されたサーバにハードウェアを接続し、ソフトウェア側も対応するサーバに接続します.サーバーが携帯電話から送信されたコマンドを受信したら、処理してハードウェア側にデータを送信し、ハードウェア部分がコマンドを受信してスイッチランプを実現します.
IPアドレス:インターネット上の各ホスト(またはルータ)の各インターフェースに、全世界で唯一の32ビットの識別子を割り当てることです.
 
http://nodejs.cn/api/net.html#net_server_listening  nodejs APIドキュメント
 
const net = require('net'); //       
var number;

const server = net.createServer((c) => {
  // 'connection' listener
  console.log('client connected');
  c.on('end', () => {
    console.log('client disconnected');
  });
  c.on('data',function (data){
	 // console.log(data);
	 number = parseInt(data);
	 number+=1;
	 console.log(number);
  }) 
  
  client.push(c);
  c.write('hello\r
'); }); server.on('error', (err) => { console.log(' '); }); server.listen(8124, () => { console.log('server bound'); }); console.log('server bound123');
最初の文はC言語の頭ファイルに似ています.分析してみます.コード実行時に最初にserver bound 123を出力します.遅延があるかもしれませんが、サーバーの確立にはまだ完全に成功していません.そしてsever boundを出力します.完成しました.  ポート番号のデータを傍受しています.   コード実行が完了してもいいです.  その後、ユーザーが接続されると、cをユーザに割り当てる.createServer Cのプログラムを実行します.これはEDAのalwaysの言葉に似ています.何かが変わるたびに入ってください.ユーザー接続があると、client connectedが表示され、ユーザーハローに送信されます.いったんユーザーがデータを送ったら、受信したデータは文字型のパーサートを使って数字型に変換して、この変数+1を私のウィンドウに印刷します.======   
 基本的なユーザーの接続ができました.少しアップグレードするつもりです.最後にやるべき項目はハードウェアと携帯電話を同時に接続して、ハードウェアで送ったデータを処理して携帯に送ります.
const net = require('net'); 
var number;
var client=new Array([2]);

const server = net.createServer((c) => {
  // 'connection' listener
  console.log('client connected');
  c.on('end', () => {
    console.log('client disconnected');
  });
  c.on('data',function (data){
	 // console.log(data);
	 number = parseInt(data);
	 number+=1;
	 console.log(number);
	for(var i=0;i<2;i++){
		try{
		client[i].write(number.toString());
				}catch(e){c.write('        ');  }
		}
  }) 
  
  client.push(c);
  c.write('hello\r
'); }); server.on('error', (err) => { console.log(' '); }); server.listen(8124, () => { console.log('server bound'); }); console.log('server bound123');
1つの配列を作成し、2人のユーザを保存します.一つの携帯は一つのハードウェアの端を持っています.   ユーザーが1人しか接続していない場合、配列が境界を越える場合があります.一つは空いているので見つけられません.そのため、独自のtry関数を採用しました.同じ情報を2つのユーザ端末に送信してみても、ユーザが存在しない場合は、存在するユーザに送信するユーザは存在しません.このようにして、2人のユーザーの相互作用を簡単に実現しました.    numberは数字の形ですので、送るのは全部文字ですので、try送信の後にnumber.toString()が追加されました.数字を文字に変換します.