Problem Datenübertragung (Variablen-Typ)
Verfasst: Sonntag 20. Februar 2022, 06:03
Hallo Gemeinde. Ich stehe gerade gehörig auf dem Schlauch.
Ich code ein Game und will einen Server erstellen, wo sich Clients anmelden können.
Ich sende eine Liste mit den Clients (Usern), welche momentan online sind an den/die Clients.
Serverseitig:
Das Präfix "clients" sagt den Clients, das es sich um eine Userliste handelt.
Clientseitig:
Nach der Anmeldung von 3 Clients, sieht der "Print-Output" des Servers wie folgt aus:
Server Output:
Ab der Anmeldung vom dritten Client, sieht der "Print-Output" der Clients wie folgt aus:
Client Output:
Ich vermute, ich müsste iwie ein Trennzeichen senden, damit ab den dritten Client nicht alles aneinander gehängt wird.
Habe aber nach Stunden pröbeln keinen Plan mehr.
Sehe ich das richtig, dass clients_names eigentlich ein Array mit Strings sein sollte?
Ich habe den Durchblick verloren.
Vllt kann mir ja jemand helden.
Ich code ein Game und will einen Server erstellen, wo sich Clients anmelden können.
Ich sende eine Liste mit den Clients (Usern), welche momentan online sind an den/die Clients.
Serverseitig:
Code: Alles auswählen
def send_clients_list(server_msg,c):
for i in range(len(server_msg)):
print("an client gesendet: ", server_msg[i], i, type(server_msg))
c.send("clients".encode() + server_msg[i])
Clientseitig:
Code: Alles auswählen
print("from_server:", from_server)
if from_server.startswith("clients".encode()):
clients_names.clear()
clients_names.append(from_server.replace("clients".encode(), "".encode()))
update_client_names_display(clients_names) # update client names display
Nach der Anmeldung von 3 Clients, sieht der "Print-Output" des Servers wie folgt aus:
Server Output:
Code: Alles auswählen
an client gesendet: b'aaa' 0 <class 'list'>
an client gesendet: b'aaa' 0 <class 'list'>
an client gesendet: b'bbb' 1 <class 'list'>
an client gesendet: b'aaa' 0 <class 'list'>
an client gesendet: b'bbb' 1 <class 'list'>
an client gesendet: b'ccc' 2 <class 'list'>
Ab der Anmeldung vom dritten Client, sieht der "Print-Output" der Clients wie folgt aus:
Client Output:
Code: Alles auswählen
from_server: b'clientsaaa'
from_server: b'clientsaaa'
from_server: b'clientsbbb'
from_server: b'clientsaaa'
from_server: b'clientsbbbclientsccc'
Habe aber nach Stunden pröbeln keinen Plan mehr.
Sehe ich das richtig, dass clients_names eigentlich ein Array mit Strings sein sollte?
Ich habe den Durchblick verloren.
Vllt kann mir ja jemand helden.