【python】socket
UDP
udp_server.py
from datetime import datetime import socket server_address = ('localhost', 6789) max_size = 4096 print('Starting the server at', datetime.now()) print('Waiting for a client to call.') server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) server.bind(server_address) data, client = server.recvfrom(max_size) print('At', datetime.now(), client, 'said', data) server.sendto(b'Are you talking to me?', client) server.close()
udp_client.py
import socket from datetime import datetime server_address = ('localhost', 6789) max_size = 4096 print('Starting the client at', datetime.now()) client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) client.sendto(b'Hey!', server_address) data, server = client.recvfrom(max_size) print('At', datetime.now(), server, 'said', data) client.close()
TCP
tcp_server.py
from datetime import datetime import socket address = ('localhost', 6789) max_size = 1000 print('Starting the server at', datetime.now()) print('Waiting for a client to call.') server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server.bind(address) server.listen(5) # 最多和5个客户端连接,超过5个就会拒绝 client, addr = server.accept() data = client.recv(max_size) print('At', datetime.now(), client, 'said', data) client.sendall(b'Are you talking to me?') client.close() server.close()
tcp_client.py
import socket from datetime import datetime address = ('localhost', 6789) max_size = 1000 print('Starting the client at', datetime.now()) client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) client.connect(address) client.sendall(b'Hey!') data = client.recv(max_size) print('At', datetime.now(), 'someone replied', data) client.close()