1、在~/source/code/python目录下创建两个py文件:
server_8079.py、client_8079.py
server_8079.py的代码:
python
# server.py
import socket
def start_server(host, port):
# 创建一个TCP/IP套接字
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定套接字到地址和端口
server_socket.bind((host, port))
# 监听传入连接
server_socket.listen(1)
print(f"Server listening on {host}:{port}")
while True:
# 等待连接
client_socket, addr = server_socket.accept()
try:
print(f"Connection from {addr}")
# 接收数据
data = client_socket.recv(1024)
print(f"Received: {data.decode('utf-8')}")
# 发送响应
response = "Hello from server!"
client_socket.sendall(response.encode('utf-8'))
finally:
# 清理连接
client_socket.close()
if __name__ == "__main__":
HOST = '192.168.111.128'
PORT = 8079
start_server(HOST, PORT)
client_8079.py的代码:
python
# client.py
import socket
def start_client(host, port):
# 创建一个TCP/IP套接字
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
# 连接到服务器
client_socket.connect((host, port))
# 发送数据
message = "Hello from client!"
client_socket.sendall(message.encode('utf-8'))
# 接收响应
response = client_socket.recv(1024)
print(f"Received: {response.decode('utf-8')}")
finally:
# 清理连接
client_socket.close()
if __name__ == "__main__":
HOST = '192.168.111.128'
PORT = 8079
start_client(HOST, PORT)
打开2个terminal:
在第1个terminal输入:
python3 server_8079.py
在第2个terminal输入:
python3 client_8079.py
