-
server端編程:
隨時都要處於監聽的狀態和服務的狀態每個應用程序佔用一個端口
依程序代碼爲例,按以上步驟來進行通信:
#client端:
import socket
client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#指明 IPv4 、協議tcp
client.connect(('127.0.0.1', 8000))#client端明確指明IP地址
while True:
re_data = input()
client.send(re_data.encode("utf8"))
data = client.recv(1024)
print(data.decode("utf8"))
#server端:
import socket
server = socket.socket(socket.AF_INET,socket.SOCK_STREAM)#指明 IPv4 、協議tcp
server.bind(('0.0.0.0', 8000))#通過IP也可以訪問,寫成127.0.0.1則通過本機局域網的ip則訪問不到,默認端口8000
server.listen()#監聽
sock, addr = server.accept()#一旦接收到用戶的連接請求後就返回一個sock和address
#獲取從客戶端發送的數據
#一次獲取1k的數據
while True:
data = sock.recv(1024)#獲取數據
print(data.decode("utf8"))#轉換成utf8字符串格式
re_data = input()#控制檯輸入,返回爲 string 類型
sock.send(re_data.encode("utf8"))