You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 5-network/01-fetch-basics/article.md
+9-9Lines changed: 9 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,9 +3,9 @@
3
3
4
4
Метод `fetch()` — это современный метод отправки HTTP-запросов.
5
5
6
-
На протяжении нескольких лет метод постоянно развивался и до сих пор продолжает улучшаться. В настоящее время его поддерживают все современный браузеры.
6
+
На протяжении нескольких лет метод постоянно развивался и до сих пор продолжает улучшаться. В настоящее время его поддерживают все современные браузеры.
7
7
8
-
Базовый синтакс:
8
+
Базовый синтаксис:
9
9
10
10
```js
11
11
let promise =fetch(url, [options])
@@ -22,7 +22,7 @@ let promise = fetch(url, [options])
22
22
23
23
Таким образом, можно проверить статус HTTP-запроса и определить, выполнился ли он успешно, а также посмотреть заголовки, но пока без тела ответа.
24
24
25
-
Промис завершается с ошибкой если `fetch` не смог выполнить HTTP запрос, например при ошибке сети, или при отсутствии запрашиваемого ресурса. HTTPошибки, такие как 404 или 500 считаются стандартной частью процесса.
25
+
Промис завершается с ошибкой если `fetch` не смог выполнить HTTP запрос, например при ошибке сети или при отсутствии запрашиваемого ресурса. HTTP-ошибки, такие как 404 или 500 считаются стандартной частью процесса.
26
26
27
27
Мы можем увидеть их в свойствах ответа:
28
28
@@ -44,7 +44,7 @@ if (response.ok) { // если HTTP код состояния 200-299
44
44
45
45
Для получения тела ответа нам нужно использовать дополнительный вызов метода.
46
46
47
-
`Response` предоставляет несколько методов основанных на промисах для доступа к телу ответа в различных форматах:
47
+
`Response` предоставляет несколько методов, основанных на промисах, для доступа к телу ответа в различных форматах:
48
48
49
49
-**`response.json()`** -- преобразовывает ответ в JSON-объект,
50
50
-**`response.text()`** -- возвращает ответ как обычный текст,
@@ -227,11 +227,11 @@ alert(result.message);
227
227
</script>
228
228
```
229
229
230
-
Объект [FormData](https://xhr.spec.whatwg.org/#formdata) автоматически экранирует данные формы, поля `<input type="file">` также обрабатываются, и отправляет это с использованием заголовка `Content-Type: form/multipart`.
230
+
Объект [FormData](https://xhr.spec.whatwg.org/#formdata) автоматически кодирует данные формы, поля `<input type="file">` также обрабатываются, и отправляет это с использованием заголовка `Content-Type: form/multipart`.
231
231
232
232
## Отправка изображения
233
233
234
-
Мы можем отправить бинарные данные напрямую используя `Blob` или `BufferSource`.
234
+
Мы можем отправить бинарные данные напрямую, используя `Blob` или `BufferSource`.
235
235
236
236
Например, у нас есть элемент `<canvas>`, на котором мы можем рисовать движением мыши. При нажатии на кнопку "Отправить", изображение отправляется на сервер:
237
237
@@ -262,7 +262,7 @@ alert(result.message);
262
262
</body>
263
263
```
264
264
265
-
В таком случае нам не нужно вручную устанавливать заголовок `Content-Type`, потому что объект `Blob` имеет встроенный тип (в показанном примере это `image/png`, созданный методом `toBlob`).
265
+
В этом случае нам не нужно вручную устанавливать заголовок `Content-Type`, потому что объект `Blob` имеет встроенный тип (в показанном примере это `image/png`, созданный методом `toBlob`).
266
266
267
267
Функция `submit()` может быть переписана без `async/await` например так:
268
268
@@ -279,9 +279,9 @@ function submit() {
279
279
}
280
280
```
281
281
282
-
## Собственный объект FormData с изображением
282
+
## Создание FormData с изображением
283
283
284
-
Всё-таки на практике удобнее отправлять изображения в качестве части данных формы с дополнительными полями, такими как "name" или остальными метаданными.
284
+
Всё-таки на практике удобнее отправлять изображения в качестве части данных формы с дополнительными полями, такими как "name" или другими метаданными.
285
285
286
286
Помимо этого, серверы обычно предназначены для получения данных, закодированных методом multipart/form-data, нежели чем простых бинарных данных.
0 commit comments