Создание базовой коммуникации между клиентом и сервером
В этом шаге мы создадим простое соединение между клиентом и сервером с использованием программирования сокетов на Python. Клиент и сервер будут общаться и обмениваться данными в рамках базового взаимодействия.
- Откройте новый файл Python под названием
server.py
в директории ~/project
.
- Реализуйте код сервера в
server.py
.
## server.py
import socket
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.bind(('127.0.0.1', 8888))
server_socket.listen(1)
connection, address = server_socket.accept()
with connection:
print('Connected by', address)
while True:
data = connection.recv(1024)
if not data:
break
connection.sendall(data)
- Откройте другой файл Python под названием
client.py
в директории ~/project
.
- Реализуйте код клиента в
client.py
.
## client.py
import socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('127.0.0.1', 8888))
client_socket.sendall(b'Hello, server')
data = client_socket.recv(1024)
print('Received', repr(data))
Запустите эти два файла одновременно и нажмите "Разделить терминал", чтобы это осуществить. На вашем терминале должны быть отображены следующие сведения:
labex:project/ $ python server.py
Connected by ('127.0.0.1', 40082)
labex:project/ $ python client.py
Received b'Hello, server'