Skip to content

Commit 2e1c204

Browse files
committed
review fixes
1 parent fa9521a commit 2e1c204

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

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

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -41,15 +41,15 @@ data: в две строки
4141
- Сообщения разделяются двойным переносом строки `\n\n`.
4242
- Чтобы разделить сообщение на несколько строк, мы можем отправить несколько `data:` подряд (третье сообщение).
4343

44-
На практике, сложные сообщения обычно отправляются в формате JSON, указывая переносы строк внутри.
44+
На практике сложные сообщения обычно отправляются в формате JSON, указывая переносы строк внутри.
4545

4646
Например:
4747

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

52-
...Так что можно считать, что в каждом `data:` указано ровно одно сообщение.
52+
...Так что можно считать, что в каждом `data:` содержится ровно одно сообщение.
5353

5454
Для каждого сообщения генерируется событие `message`:
5555

@@ -58,7 +58,7 @@ let eventSource = new EventSource("/events/subscribe");
5858

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

6464
// или eventSource.addEventListener('message', ...)
@@ -74,7 +74,7 @@ let source = new EventSource("https://another-site.com/events");
7474

7575
Сервер получит заголовок `Origin` и должен будет ответить с заголовком `Access-Control-Allow-Origin`.
7676

77-
Чтобы передать авторизирующие заголовки, нужно передать дополнительный аргумент `withCredentials`:
77+
Чтобы послать авторизационные данные, следует установить дополнительную опцию `withCredentials`:
7878

7979
```js
8080
let source = new EventSource("https://another-site.com/events", {
@@ -87,13 +87,13 @@ let source = new EventSource("https://another-site.com/events", {
8787

8888
## Переподключение
8989

90-
После создания, `new EventSource` подключается к серверу и, если соединение обрывается, -- переподключается.
90+
После создания `new EventSource` подключается к серверу и, если соединение обрывается, -- переподключается.
9191

9292
Это очень удобно, так как нам не приходится беспокоиться об этом.
9393

94-
По умолчанию, между попытками возобновить соединение будет небольшая пауза в несколько секунд.
94+
По умолчанию между попытками возобновить соединение будет небольшая пауза в несколько секунд.
9595

96-
Сервер может выставить рекомендуемую задержку, указав в ответе `retry:`милисекундах):
96+
Сервер может выставить рекомендуемую задержку, указав в ответе `retry:`миллисекундах):
9797

9898
```js
9999
retry: 15000
@@ -102,7 +102,7 @@ data: Привет, я выставил задержку переподключ
102102

103103
Поле `retry:` может посылаться как вместе с данными, так и отдельным сообщением.
104104

105-
Браузер должен быть подождать окончания задержки перед попыткой переподключения. Если потеряно подключение к интернету, бразуер может дождаться его востанновления и затем попытаться переподключиться.
105+
Браузеру следует ждать именно столько перед новой попыткой подключения. Если потеряно соединение с сетью, то бразуер может подождать его восстановления и затем попытаться переподключиться.
106106

107107
- Если сервер хочет остановить попытки переподключения, он должен ответить со статусом 204.
108108
- Если браузер хочет прекратить соединение, он может вызвать `eventSource.close()`:
@@ -156,9 +156,9 @@ EventSource.OPEN = 1; // подключено
156156
EventSource.CLOSED = 2; // подключение закрыто
157157
```
158158

159-
При создании объекта и разрыве соединения, оно автоматически устанавливается в значение `EventSource.CONNECTING` (равно `0`).
159+
При создании объекта и разрыве соединения оно автоматически устанавливается в значение `EventSource.CONNECTING` (равно `0`).
160160

161-
Мы можем обратится к этому свойству, чтобы узнать текущее состояние `EventSource`.
161+
Мы можем обратиться к этому свойству, чтобы узнать текущее состояние `EventSource`.
162162

163163
## Типы событий
164164

@@ -198,16 +198,16 @@ eventSource.addEventListener('leave', event => {
198198
});
199199
```
200200

201-
## Пример
201+
## Полный пример
202202

203203
В этом примере сервер посылает сообщения `1`, `2`, `3`, затем `пока-пока` и разрывает соединение.
204204

205-
После этого браузер автоматически восстанавливает соединение.
205+
После этого браузер автоматически переподключается.
206206

207207
[codetabs src="eventsource"]
208208

209209

210-
## Итоги
210+
## Итого
211211

212212
Объект `EventSource` "общается" с сервером. Он устанавливает постоянное соединение и позволяет серверу отправлять через него сообщения.
213213

@@ -228,7 +228,7 @@ eventSource.addEventListener('leave', event => {
228228
let source = new EventSource(url, [credentials]);
229229
```
230230

231-
Второй аргумент - объект с одним свойством: `{ withCredentials: true }`, позволяет передавать вместе с запросом авторизирующие заголовки.
231+
Второй аргумент - объект с одним свойством: `{ withCredentials: true }`. Он позволяет отправлять авторизационные данные в том числе и на другие домены.
232232

233233
В целом, кросс-доменная безопасность на таком же уровне, как у `fetch` и других методов работы с сетью.
234234

@@ -254,17 +254,17 @@ let source = new EventSource(url, [credentials]);
254254
: Соединение установлено.
255255

256256
`error`
257-
: Потеряно соединение (произойдёт переподключение) или произошла фатальная ошибка. Мы можем обратиться к свойству `readyState`, чтобы проверить происходит ли переподключение.
257+
: Потеряно соединение (произойдёт переподключение) или произошла фатальная ошибка. Мы можем обратиться к свойству `readyState`, чтобы проверить, происходит ли переподключение.
258258

259259
Сервер может выставить собственное событие с помощью `event:`. Такие события должны быть обработаны с помощью `addEventListener`, а не `on<event>`.
260260

261261
### Формат ответа сервера
262262

263263
Сервер посылает сообщения, разделённые двойным переносом строки `\n\n`.
264264

265-
Часть сообщения может начинаться с:
265+
Сообщения состоят из следующих частей:
266266

267267
- `data:` -- тело сообщения, несколько `data` подряд интерпретируются как одно сообщение, разделённые переносами строк `\n`.
268268
- `id:` -- обновляет свойство `lastEventId`, отправляемое в `Last-Event-ID` при переподключении.
269269
- `retry:` -- рекомендованная задержка перед переподключением в миллисекундах. Не может быть установлена с помощью JavaScript.
270-
- `event:` -- пользовательское имя события, должно быть указано перед `data:`.
270+
- `event:` -- имя пользовательского события, должно быть указано перед `data:`.

0 commit comments

Comments
 (0)