websockets.html
1.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>Test WebSockets</title>
</head>
<body>
<script>
// sei "4711" die in einer vorangegangenen REST-Authentifizierung ermittelte "restSessionId"
var restSessionId = 4711;
var url = "ws://localhost:8080/swxercise/ws/api/v1/anEndpoint/" + restSessionId;
var webSocket = new WebSocket(url);
// Callback-Methoden für die WebSocket-Kommunikation
webSocket.onopen = function(e) { onWebSocketOpen(e) };
webSocket.onclose = function(e) { onWebSocketClose(e) };
webSocket.onmessage = function(e) { onWebSocketMessage(e) };
webSocket.onerror = function(e) { onWebSocketError(e) };
function onWebSocketOpen(e) {
console.log("WebSocket has been opened.");
}
function onWebSocketClose(e) {
console.log("WebSocket has been closed.");
}
function onWebSocketMessage(e) {
// JSON-String in ein JavaScript-Objekt konvertieren
var json = JSON.parse(e.data);
console.log("WebSocket Message '" + json.message + "' has been received.");
}
function onWebSocketError(e) {
alert("WebSocket Error " + e + " has been thrown!");
}
function sendWebSocketMessage() {
var json = {
"username": "admin",
"message": "Hello World!"
}
// JavaScript-Objekt in einen JSON-String konvertieren
webSocket.send(JSON.stringify(json));
console.log("Tried to send WebSocket Message.");
}
</script>
<button onclick="sendWebSocketMessage()">Klick mich.</button>
</body>
</html>