Sobes.tech
Middle
26

Екі endpoint бар: пайдаланушылар тізімін алу және ID бойынша пайдаланушыны алу. Осы API-лермен жұмыс істеу және жауап типін қалай ұйымдастырасыз?

Сұралған компаниялар
ТАУ Сервис

AI-дан жауап

sobes.tech AI

Для типизации ответов от двух endpoint'ов — списка пользователей и пользователя по ID — удобно определить отдельные типы данных, отражающие структуру ответа.

Например, используя TypeScript:

// Тип для одного пользователя
interface User {
  id: string;
  name: string;
  email: string;
  // другие поля
}

// Ответ с одним пользователем
interface UserResponse {
  user: User;
}

// Ответ со списком пользователей
interface UsersListResponse {
  users: User[];
  totalCount: number; // если нужно
}

Для работы с API можно создать функции, которые возвращают промисы с типизированными данными:

async function fetchUserById(id: string): Promise<UserResponse> {
  const response = await fetch(`/api/users/${id}`);
  return response.json();
}

async function fetchUsersList(): Promise<UsersListResponse> {
  const response = await fetch('/api/users');
  return response.json();
}

Такой подход позволяет строго контролировать структуру данных, получать автодополнение и проверку типов в IDE, что снижает количество ошибок и облегчает поддержку кода.