/

Python, 創建一個 TCP 伺服器

Python, 創建一個 TCP 伺服器

Python 標準庫提供了 socketserver 套件,我們可以使用它來創建一個 TCP 伺服器。

1
2
3
4
5
6
7
8
9
10
11
12
from socketserver import BaseRequestHandler, TCPServer

class handler(BaseRequestHandler):
def handle(self):
while True:
msg = self.request.recv(1024)
if msg == b'quit\n':
break
self.request.send(b'Message received: ' + msg)

with TCPServer(('', 8000), handler) as server:
server.serve\_forever()

使用 Netcat 連接到這個伺服器,Netcat 是一個很方便的工具,非常適合用來測試 TCP 和 UDP 伺服器。它默認安裝在 Linux 和 macOS 上,在 nc 命令下可用:

1
nc localhost 8000

連接到伺服器後,您可以通過輸入消息來向其發送任何消息。伺服器將回復一則確認收到消息的回應。

除非您輸入 quit,否則連接將關閉(但伺服器仍然運行,您可以再次連接)。

tags: [“Python”, “TCP server”, “socketserver”, “Netcat”]