import socket
def main():
# 1. 創建套接字
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 2. 綁定本地信息
tcp_server_socket.bind(('', 1234))
# 3.讓默認的套接字變為被動 listen
tcp_server_socket.listen(128)
while True: # 為多個客戶端服務
# 4.等待客戶的鏈接 accept
new_client_socket, client_addr = tcp_server_socket.accept()
while True: # 為這個客戶多次服務
# 5.接受客戶段發過來的請求
recv_data = new_client_socket.recv(1024)
print(recv_data, recv_data.decode('gbk'))#前面傳遞回來的是bytes類型, 后面進行解碼
if recv_data:
# 6.回送一部分數據給客戶端
new_client_socket.send('It\'s ok'.encode('utf-8'))
else:
print('已經為這個客戶端服務完畢')
break
# 7.關閉套接字
new_client_socket.close()
tcp_server_socket.close()
if __name__ == '__main__':
main()