Проверяет понимание того, когда ответ от сервера уже является JavaScript-объектом и не требует вызова response.json() для преобразования.
Метод response.json() используется для преобразования тела ответа сервера из формата JSON в JavaScript-объект. Однако, если сервер возвращает данные в другом формате, этот метод не подходит. Например, при получении обычного текста, HTML-разметки, бинарных данных (изображения, файлы) или данных формы.
response.text() — для текстовых данных (HTML, CSV, plain text).response.blob() — для бинарных данных (изображения, аудио, видео).response.formData() — для данных формы (multipart/form-data).response.arrayBuffer() — для низкоуровневых бинарных данных.fetch('/api/data')
.then(response => {
if (response.headers.get('Content-Type') === 'text/plain') {
return response.text(); // JSON не нужен
}
return response.json();
})
.then(data => console.log(data));В этом примере проверяется заголовок Content-Type. Если сервер возвращает текст, используется response.text(), иначе — response.json().
Используйте response.json() только когда уверены, что сервер возвращает JSON. В остальных случаях применяйте соответствующие методы для корректной обработки данных.
Уровень
Рейтинг:
3
Сложность:
3
Навыки
JavaScript
Node.js
Ключевые слова
Подпишись на React Developer в телеграм
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию