Write a function getUserProfile that takes a userId as an argument and fetches the user profile from the API endpoint "[link] The function should log the user profile if the fetch is successful, and log an error message if the fetch fails.

Используйте fetch с явной проверкой HTTP-статуса, затем разберите JSON и обработайте ошибки сети, сервера и формата.

Короткий ответ

Что ответить на собеседовании

Используйте fetch с явной проверкой HTTP-статуса, затем разберите JSON и обработайте ошибки сети, сервера и формата.

Подробный разбор

Ответ с пояснениями

Используйте fetch с явной проверкой HTTP-статуса, затем разберите JSON и обработайте ошибки сети, сервера и формата.

Адрес endpoint отсутствует в условии, поэтому функция построения URL передаётся отдельно. В production не следует логировать целиком профиль и чувствительные детали ошибок.

async function getUserProfile(userId, profileUrlFor) {
  try {
    const response = await fetch(profileUrlFor(userId));
    if (!response.ok) throw new Error(`HTTP ${response.status}`);
    const profile = await response.json();
    console.log(profile); // только учебный пример
    return profile;
  } catch {
    console.error('Не удалось загрузить профиль');
    return null;
  }
}

Функция profileUrlFor должна использовать настоящий маршрут API и корректно кодировать идентификатор.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее