以下是基于 TCP 的 server 和 client 交互的四个文件的示例代码:

server.py:

import socket

# 创建TCP/IP socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 绑定IP地址和端口号
server_address = ('localhost', 12345)
server_socket.bind(server_address)

# 监听客户端连接
server_socket.listen(1)

while True:
    print('等待客户端连接...')
    # 接受客户端连接
    client_socket, client_address = server_socket.accept()
    print('客户端已连接:', client_address)

    try:
        while True:
            data = client_socket.recv(1024).decode()
            if data.endswith('eof'):
                data = data[:-3]
                print('客户端输入内容:', data)
                break
            else:
                print('客户端输入内容:', data)
    finally:
        # 关闭客户端连接
        client_socket.close()

client.py:

import socket

# 创建TCP/IP socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 连接服务器
server_address = ('localhost', 12345)
client_socket.connect(server_address)

try:
    while True:
        message = input('请输入内容:') + 'eof'
        client_socket.sendall(message.encode())
        if message.endswith('eof'):
            break
finally:
    # 关闭客户端连接
    client_socket.close()

编译并运行 server.py 和 client.py 文件后,在 client.py 中输入内容,server.py 会打印出客户端输入的内容。当输入内容以 'eof' 结尾时,表示输入结束,server.py 会停止打印并等待下一个客户端连接。

注意:在运行 server.py 之前,需要先运行 client.py 与服务器建立连接。

Python 和 C 实现基于 TCP 的 Server 和 Client 交互

原文地址: https://www.cveoy.top/t/topic/o2eH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录