Как сделать HTTP запрос в TypeScript?
Всем привет! Подскажите, пожалуйста, как правильно сделать HTTP-запрос в TypeScript. Я пишу простое приложение для получения данных с публичного REST API (например, JSONPlaceholder). Проблема в том, что я не совсем понимаю, как типизировать ответ от сервера и какой способ лучше использовать в современном TypeScript-проекте.
Я пробовал использовать встроенный fetch, но столкнулся с тем, что ответ приходит как any, и TypeScript ругается на отсутствие типов. Вот мой текущий код:
async function fetchData() {
const response = await fetch('https://jsonplaceholder.typicode.com/posts/1');
const data = await response.json();
console.log(data);
}
Я ожидаю, что data будет иметь конкретную структуру, например: { userId: number, id: number, title: string, body: string }. Как мне объявить интерфейс и применить его к ответу? Нужно ли использовать сторонние библиотеки типа axios или fetch достаточно? Есть ли разница в обработке ошибок и типизации между ними?
Буду благодарен за пример кода с правильной типизацией и обработкой ошибок. Заранее спасибо!