Skip to content

Commit 0591b81

Browse files
Update article.md
1 parent 1f85d9c commit 0591b81

File tree

1 file changed

+18
-19
lines changed

1 file changed

+18
-19
lines changed

5-network/11-websocket/article.md

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,44 +14,43 @@ let socket = new WebSocket("ws://javascript.info");
1414
C'è anche il protocollo criptat `wss://`, utilizzato per i websockets HTTPS
1515

1616

17-
```smart header="Sceggli sempre wss://"
17+
```smart header="Scegli sempre `wss://`"
1818
Il procotollo `wss://` non solo è criptato, ma è anche più affidabile.
1919

2020
Questo perchè i dati del `ws://` non sono criptati, visibili per qualunque intermediario. Server proxy molto vecchi, che non riconoscono l'implementazione WebSocket, potrebbero notare i suoi headers strani e chiudere la connessione.
2121

2222
Invece, `wss://` è una connessione over TLS (lo stesso di HTTPS che è HTTP over TLS), TLS cripta il dato invio e lo decripta in ricezione. Così i dati passano attraverso i proxy in maniera criptata e non potendone vedere il contenuto lo lasciano passare.
2323
```
24+
Appena creato il socket, dovremmo rimanere in ascolto su di esso per gli eventi. Ce ne sono 4:
25+
- **`open`** -- connessione stabilita (established connection),
26+
- **`message`** -- dati ricevuti (data received),
27+
- **`error`** -- errore websocket (websocket error),
28+
- **`close`** -- connessione chiusa (connection closed).
2429
25-
Once the socket is created, we should listen to events on it. There are totally 4 events:
26-
- **`open`** -- connection established,
27-
- **`message`** -- data received,
28-
- **`error`** -- websocket error,
29-
- **`close`** -- connection closed.
30+
...E nel caso volessimo inviare qualcosa al server, allora abbiamo il metodo `socket.send(data)` che si occupa di questo.
3031
31-
...And if we'd like to send something, then `socket.send(data)` will do that.
32-
33-
Here's an example:
32+
Un esempio:
3433
3534
```js run
3635
let socket = new WebSocket("wss://javascript.info/article/websocket/demo/hello");
3736
3837
socket.onopen = function(e) {
39-
alert("[open] Connection established");
40-
alert("Sending to server");
41-
socket.send("My name is John");
38+
alert("[open] Connessione stabilita");
39+
alert("Invio al server");
40+
socket.send("Il mio nome è John");
4241
};
4342
4443
socket.onmessage = function(event) {
45-
alert(`[message] Data received from server: ${event.data}`);
44+
alert(`[message] Ricezione dati dal server: ${event.data}`);
4645
};
4746
4847
socket.onclose = function(event) {
4948
if (event.wasClean) {
50-
alert(`[close] Connection closed cleanly, code=${event.code} reason=${event.reason}`);
49+
alert(`[close] Connessione chiusa con successo, code=${event.code} reason=${event.reason}`);
5150
} else {
52-
// e.g. server process killed or network down
53-
// event.code is usually 1006 in this case
54-
alert('[close] Connection died');
51+
// e.g. processo del server teminato o connessione già
52+
// in questo caso event.code solitamente è 1006
53+
alert('[close] Connection morta.');
5554
}
5655
};
5756
@@ -60,9 +59,9 @@ socket.onerror = function(error) {
6059
};
6160
```
6261

63-
For demo purposes, there's a small server [server.js](demo/server.js) written in Node.js, for the example above, running. It responds with "Hello from server, John", then waits 5 seconds and closes the connection.
62+
A scopo dimostrativo, c'è un piccolo server funzionante [server.js](demo/server.js) scritto in Node.js, per l'esempio qui sopra. Risponde con "Hello from server, John" quindi attende 5 secondi e chude la connessione.
6463

65-
So you'll see events `open` -> `message` -> `close`.
64+
Quindi vedrai gli eventi `open` -> `message` -> `close`.
6665

6766
That's actually it, we can talk WebSocket already. Quite simple, isn't it?
6867

0 commit comments

Comments
 (0)