一起學Python:tcp服務器


tcp服務器

生活中的電話機

如果想讓別人能更夠打通咱們的電話獲取相應服務的話,需要做以下幾件事情:

  1. 買個手機

  2. 插上手機卡

  3. 設計手機為正常接聽狀態(即能夠響鈴)

  4. 靜靜的等着別人撥打

tcp服務器

如同上面的電話機過程一樣,在程序中,如果想要完成一個tcp服務器的功能,需要的流程如下:

  1. socket創建一個套接字

  2. bind綁定ip和port

  3. listen使套接字變為可以被動鏈接

  4. accept等待客戶端的鏈接

  5. recv/send接收發送數據

一個很簡單的tcp服務器如下:

from socket import *# 創建sockettcp_server_socket = socket(AF_INET, SOCK_STREAM)# 本地信息address = ('', 7788)# 綁定tcp_server_socket.bind(address)# 使用socket創建的套接字默認的屬性是主動的,使用listen將其變為被動的,這樣就可以接收別人的鏈接了tcp_server_socket.listen(128)# 如果有新的客戶端來鏈接服務器,那么就產生一個新的套接字專門為這個客戶端服務# client_socket用來為這個客戶端服務# tcp_server_socket就可以省下來專門等待其他新客戶端的鏈接client_socket, clientAddr = tcp_server_socket.accept()# 接收對方發送過來的數據recv_data = client_socket.recv(1024)  # 接收1024個字節print('接收到的數據為:', recv_data.decode('gbk'))# 發送一些數據到客戶端client_socket.send("thank you !".encode('gbk'))# 關閉為這個客戶端服務的套接字,只要關閉了,就意味着為不能再為這個客戶端服務了,如果還需要服務,只能再次重新連接client_socket.close()

運行流程:

<1>tcp服務器

接收到的數據為: 你在么?

<2>網絡調試助手:

 

 

==================================================================

注:以上課程筆記為學習時整理的老師課堂學習筆記,如需轉載,如需完整筆記,請私聊聯系我。

專題Python每天更新我的學習筆記。以上內容整理與上課筆記,更多詳情查看原文鏈接,我的公眾號干貨持續更新中

原文鏈接:公眾號文章Python開發者交流平台


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM