Ich habe es als Testversion geschrieben, aber ich schien es nicht zu benutzen, also für einige Zeit ein Memo
UDPServer_and_TCPClient.py
#Führen Sie den UDP-Server und den TCP-Client aus
from socket import socket, AF_INET, SOCK_DGRAM, SOCK_STREAM
#Eine Funktion, die eine Verbindung mit TCP herstellt und Daten sendet
def tcp_send():
with socket(AF_INET, SOCK_STREAM) as s:
s.connect(('127.0.0.1', 50010))
while True:
s.sendall(b'hello')
#UDP-Server
udp_server = socket(AF_INET, SOCK_DGRAM)
udp_server.bind(('', 8888))
while True:
msg, address = udp_server.recvfrom(8192)
if msg.decode('utf-8') == "tcp_start":
#Wenn Sie eine bestimmte Zeichenfolge erhalten, verbinden Sie den TCP-Client und senden Sie
tcp_send()
break
udp_server.close()
TCPServer_and_UDPClient.py
#Führen Sie den TCP-Server und den UDP-Client aus
from socket import socket, AF_INET, SOCK_DGRAM, SOCK_STREAM
#Funktion zum Senden von UDP
def udp_send():
udp_client = socket(AF_INET, SOCK_DGRAM)
udp_client.sendto("tcp_start".encode(), ("127.0.0.1", 8888))
#Erstellen Sie einen TCP-Server
with socket(AF_INET, SOCK_STREAM) as tcp_server:
tcp_server.bind(('127.0.0.1', 50010))
tcp_server.listen(1)
#UDP-Übertragung
udp_send()
while True:
conn, addr = tcp_server.accept()
with conn:
while True:
data = conn.recv(1024)
print(data.decode('utf-8'))
Recommended Posts