Author: zhuoda
'''
TCP 服務(wù)
'''
import socket
tcpSvr =socket.socket() #1創(chuàng)建socket 對(duì)象 (默認(rèn)tcp 還有upd)
tcpSvr.bind(('',8884)) #2 綁定IP 端口 用于客戶端 連接
tcpSvr.listen(5) #3監(jiān)聽 客戶端隊(duì)列 5表示最大5個(gè).
conn ,addr = tcpSvr.accept() #4接收 客戶端信息 返回 tcp連接和ip
data =conn.recv(1024) #5阻塞 接收 '字節(jié)數(shù)據(jù)'. 緩存1024b
conn.send(data) #6發(fā)送 數(shù)據(jù)回 客戶端
print('等待連接')
服務(wù)器 要不停的 接收客戶端信息
while 1:
conn, addr =tcpSvr.accept()
# 服務(wù)器不停的 收發(fā)數(shù)據(jù).
while 1:
data = conn.recv(1024) #接收字節(jié)信息
if data: #如果有數(shù)據(jù) 接收到 ,則 發(fā)回 '接收到的信息'
conn.send(data) #發(fā)回原字節(jié)信息
print(f'客戶端 {str(addr)} 連接中')
print(data.decode('utf-8')) #接到字節(jié)信息,要編碼
if data == 'q': # 如果接收到的 信息='q' 關(guān)閉conn 對(duì)象,釋放資源
conn.close() # 斷開本次連接
break
else: #如果接收到 空 信息 表示結(jié)束
print('數(shù)據(jù)接收完畢')
conn.close() #關(guān)閉連接 ,釋放資源
break
Author: zhuoda
import socket
tcp_client = socket.socket()
tcp_client.connect(('192.168.1.11',8884)) #連接服務(wù)器
while 1:
msg = input('.......>:')
tcp_client.send(msg.encode('utf-8'))
smsg= tcp_client.recv(1024)
print('服務(wù)器端:',smsg.decode())
if msg=='q'or msg=='': # 結(jié)束發(fā)送信息
break;
tcp_client.close() #斷開連接