Python 標準庫提供了 socketserver
套件,我們可以使用它來創建一個 TCP 伺服器。
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
命令下可用:
nc localhost 8000
連接到伺服器後,您可以通過輸入消息來向其發送任何消息。伺服器將回復一則確認收到消息的回應。
除非您輸入 quit
,否則連接將關閉(但伺服器仍然運行,您可以再次連接)。