Middle
35
Эки 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, что снижает количество ошибок и облегчает поддержку кода.