Zum Inhalt springen

Suche Hilfestellung zu Sockets zwischen Java und PHP


laubi

Empfohlene Beiträge

Hallo erstmals,

ich bin in der "Socket-Welt" ein neuling, und brauche daher eure hilfe.

Ich möchte zwischen Java (als Server) und PHP (als Client) Daten austauschen.

Der Client soll einen Befehl senden, und der Server darauf die Antwort.

Allerdings stellen sich hier schon mal meine Hauptfrage:

Wie kann ich am besten Daten zwischen 2 Sockets senden?

Der Client Schickt einen Befehl in Form eines Strings zum Server, mit Parametern und allem was gebraucht wird.

Der Server wertet diese aus, und schickt die Antwort zurück.

Nun ist aber da ein kleines Problemchen:

Wenn ich nun eine Variable schicken will, z.b. Integer, so sendet er mir "1234 \n", und sowas kann man nicht mal in PHP einfach casten.

Wie kann ich Klassen und Variablen ohne Probleme einfach hin- und her-schicken? Klassen muss man wohl serialisieren, aber davon hab ich bisher keine Ahnung, und genausowenig wie ich sie am besten schicke, bzw wieder zu einer Klasse in PHP mache.

Als Beispiel folgender Code:

PrintWriter out = new PrintWriter(client.getOutputStream(),true);

                    out.println(false);

Was in PHP ankommt ist das:

string(7) "false "

Das intressante dabei finde ich ist, das es 7 lang ist, aber nur 6 Zeichen angezeigt werden. Ist das 7. das \n, und warum das 6. ein Leerzeichen?

Nun, ich hoffe ihr könnt mir helfen, ich würde in diesem Bereich wirklich hilfe benötigen.

Danke im Vorraus

Laubi

Link zu diesem Kommentar
Auf anderen Seiten teilen

ein Socket hängt nicht irgendwelche Daten an, der überträgt genau das was Du im übergibst:

PHP: socket_write - Manual

PHP: socket_send - Manual

bzw

Socket (Java 2 Platform SE v1.4.2)

Du solltest Dir einmal überlegen was ein "println" macht und wofür das "ln" in dem Methodennamen steht.

Eine Serialisation ist nicht zwingend erforderlich, kann aber manches einfacher machen. Ansonsten musst Du eben ein Protokoll benutzen, das eben beschreibt, wie die Datenstruktur sein soll und es dann sowohl im Client wie auch im Server implementieren

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...