Skip to content

Commit 5d351c4

Browse files
committed
Translated "Getting messages"
1 parent 82dc883 commit 5d351c4

File tree

1 file changed

+18
-18
lines changed

1 file changed

+18
-18
lines changed

5-network/12-server-sent-events/article.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -20,45 +20,45 @@
2020

2121
Если нам нужно получать поток данных с сервера: неважно, сообщения в чате или же цены для магазина - вот в чем хорош `EventSource`. К тому же, он поддерживает автоматическое переподключение, которое, используя `WebSocket`, нам бы пришлось поддерживать самим. Кроме того, мы используем старый добрый HTTP, а не новый протокол.
2222

23-
## Getting messages
23+
## Получение сообщений
2424

25-
To start receiving messages, we just need to create `new EventSource(url)`.
25+
Чтобы начать получать данные, нам нужно просто создать `new EventSource(url)`.
2626

27-
The browser will connect to `url` and keep the connection open, waiting for events.
27+
Браузер установит соединение с `url` и будет поддерживать его открытым, ожидая события.
2828

29-
The server should respond with status 200 and the header `Content-Type: text/event-stream`, then keep the connection and write messages into it in the special format, like this:
29+
Сервер должен ответить со статусом 200 и заголовком `Content-Type: text/event-stream`, затем он должен поддерживать соединение открытым и отправлять сообщения в особом формате:
3030

3131
```
32-
data: Message 1
32+
data: Сообщение 1
3333
34-
data: Message 2
34+
data: Сообщение 2
3535
36-
data: Message 3
37-
data: of two lines
36+
data: Сообщение 3
37+
data: в две строки
3838
```
3939

40-
- A message text goes after `data:`, the space after the semicolon is optional.
41-
- Messages are delimited with double line breaks `\n\n`.
42-
- To send a line break `\n`, we can immediately one more `data:` (3rd message above).
40+
- Текст сообщения указывается после `data:`, пробел после двоеточия необязателен.
41+
- Сообщения разделяются двойным переносом строки `\n\n`.
42+
- Чтобы разделить сообщение на несколько строк, мы можем отправить несколько `data:` подряд (третее сообщение).
4343

44-
In practice, complex messages are usually sent JSON-encoded, so line-breaks are encoded within them.
44+
На практике, сложные сообщения обычно отправляются в формате JSON, указывая переносы строк внутри.
4545

46-
For instance:
46+
Например:
4747

4848
```js
49-
data: {"user":"John","message":"First line*!*\n*/!* Second line"}
49+
data: {"user":"Джон","message":"Первая строка*!*\n*/!* Вторая строка"}
5050
```
5151

52-
...So we can assume that one `data:` holds exactly one message.
52+
...Так что можно считать, что в каждом `data:` указано ровно одно сообщение.
5353

54-
For each such message, the `message` event is generated:
54+
Для каждого сообщения генериуется событие `message`:
5555

5656
```js
5757
let eventSource = new EventSource("/events/subscribe");
5858

5959
eventSource.onmessage = function(event) {
60-
console.log("New message", event.data);
61-
// will log 3 times for the data stream above
60+
console.log("Новое сообщение", event.data);
61+
// этот код вывет в консоль 3 сообщения для данных, описанных выше
6262
};
6363

6464
// or eventSource.addEventListener('message', ...)

0 commit comments

Comments
 (0)