単純なネットワークチャットプログラムの実現

はじめにソケット

また、「ソケット」として知られているソケットが、アプリケーションは通常「ソケット」ネットワーク要求またはネットワーク要求に応答することによって発行され、ホスト間またはコンピュータ間のプロセスが通信することができます。

ソケットの接続端と呼ばれるデータの交換を実現する双方向通信を介してネットワーク上の2つのプログラム。

ポート番号(ソケット)の少なくとも一組のネットワーク通信接続を確立します。ソケットは、TCP / IPカプセル化のために、TCP / IPにも使用されるWeb開発を行うためのプログラマのためのインタフェースを提供し、基本的なプログラミング・インターフェース(API)であります
HTTP乗用車、包装又は表示データの特定の形式;ソケットエンジン、ネットワーク通信する能力を提供する、これはソケットインタフェースプログラミングです。
要するに、ソケットを介して、我々はすぐにネットワークプログラミングを実現することができます。

ソケットプログラミングのアイデア

TCPサーバー:

ローカルIPおよびポートにソケットをバインドソケットを作成するには1

   #Socket.socket(はsocket.AF_INET、socket.SOCK_STREAM)、s.bind()

接続#s.listen(2スタートリスニング)

3)は、クライアント#のs.accept(からの接続要求を受け入れ続け、循環に入ります

4次に、)送信されたデータを受信し、(他のデータ#1 s.recvを送信し、s.sendall()

5送信が完了した後、ソケットが閉じ#1 S。CLOSEです()

 

TCPクライアント:

1ソケットを作成し、リモートアドレスに接続

       #Socket.socket(はsocket.AF_INET、socket.SOCK_STREAM)、s.connect()

(データ#1 s.sendallを送受信する接続後の2)、s.recv()

3送信が完了した後、ソケットが閉じ#1 S。CLOSEです()

 

コード:

クライアント:

import socket
s1=socket.socket()
address = ('127.0.0.1', 1314)
s1.connect(address)

while True:
  word=raw_input('input ur word plz: ')


  s1.send(word.encode('utf-8'))
  data= s1.recv(1024)
  if word=="quit":
    break
  print(data.encode('utf-8'))
s1.close()

 

服务端:

import socket
s=socket.socket()
address=('127.0.0.1',1314)
s.bind(address)

s.listen(5)
while True:
c,addr=s.accept()
print 'address:',addr
while True:
  data=c.recv(1024)
  print(data.encode('utf-8'))
  word=raw_input('input ur word plz: ')
  c.send(word.encode('utf-8'))

结果图:

おすすめ

転載: www.cnblogs.com/wjt1996/p/12026400.html