Benutzer-Werkzeuge

Webseiten-Werkzeuge


api:documentation:netzwerk:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
api:documentation:netzwerk:start [2021/05/11 13:40] Martin Pabstapi:documentation:netzwerk:start [2021/12/29 11:29] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 4: Zeile 4:
 </WRAP> </WRAP>
  
- +===== Inhalt: ===== 
-<WRAP center round info 80%> +  [[api:documentation:netzwerk:websocket|WebSocket und WebSocketClient]] 
-Die Klasse ''WebSocket'' stellt Methoden bereit, um einer Session beizutreten, Nachrichten an alle anderen Clients derselben Session zu senden und Nachrichten von ihnen zu empfangen. \\ \\  +  [[api:documentation:netzwerk:chat|Einfaches Chatprogramm]]
-Für jeden anderen Client derselben Session gibt es ein ''WebSocketClient''-Objekt, mit dessen ''send''-Methode eine Nachricht an diesen einzelnen Client gesendet werden kann. +
-</WRAP> +
- +
-Schauen wir uns die Funktionalität an einem einfachen Chat-Programm an: +
- +
-<HTML> +
- +
-<div class="java-online" style="height: 500px; width: 100%" data-java-online="{'withBottomPanel'false, 'id': 'chatExample'}"> +
- +
-<script type="text/plain" title="ChatExample.java"> +
-WSTest ws new WSTest(); +
- +
-String name Input.readString("Bitte gib Deinen Namen ein:"); +
- +
-/*+
- * hf1a ist der Session-Key. Er kann frei gewählt werden. Alle Clients, die sich mit +
- * dem selben Session-Key anmelden, können miteinander kommunizieren. +
- * Die Methode open öffnet die Netzwerkverbindung zum Server und bewirkt, dass +
- * dieser Client dort der Session hf1a beitritt. +
- */ +
-ws.open("hf1a", name);  +
- +
-while(true) { +
-   String s = Input.readString("Nachricht:");   // Nutzer kann Nachricht eintippen +
-   ws.sendToAll(s, "Nachricht");                // Die Nachricht wird an alle Clients der Session versandt. +
-+
- +
- +
-class WSTest extends WebSocket +
- +
-   /** +
-    * Wird aufgerufen, sobald die Verbindung steht.  +
-    */ +
-   public void onOpen() { +
-      println("Connected!"); +
-   } +
- +
-   /** +
-    * Wird aufgerufen, wenn eine Nachricht eines anderen Clients empfangen wurde. +
-    */ +
-   public void onMessage(WebSocketClient sender, String message, String messageType) { +
-      println("Message from " + sender.getNickname(), Color.red); +
-      println(message); +
-   } +
- +
-   /*+
-    * Wird aufgerufen, wenn ein anderer Client derselben Session beitritt. +
-    */ +
-   public void onOtherClientConnected(WebSocketClient otherClient) { +
-      println("Neuer Teilnehmer" + otherClient.getNickname(), Color.green); +
-   } +
- +
-   /** +
-    * Wird aufgerufen, wenn ein anderer Client die Session verlässt. +
-    */ +
-   public void onOtherClientDisConnected(WebSocketClient otherClient) { +
-      println(otherClient.getNickname() + " hat sich abgemeldet.", Color.lightblue); +
-   } +
- +
-   /** +
-    * Wird aufgerufen, wenn der Server (z.B. aus technischen Gründen) die Session +
-    * schließt. +
-    */ +
-   public void onClose() { +
-      println("Closed!"); +
-   } +
-    +
-+
-</script> +
- +
-</div> +
- +
-</HTML>+
  
  
api/documentation/netzwerk/start.1620733245.txt.gz · Zuletzt geändert: 2021/12/29 11:29 (Externe Bearbeitung)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki