Treci la conținutul principal

Cealaltă față a API-ului

Programele TypeScript nu sunt doar servere — ele apelează la rândul lor API-uri: preiau date, comunică cu servicii, integrează terți. Clientul este fetch, inclus în Node.js, plus trei obiceiuri:

1. fă cererea (await fetch(url) pentru un GET sau fetch(url, { method, headers, body }) pentru control deplin),
2. verifică res.status înainte de a te încrede în corpul răspunsului — fetch nu aruncă o eroare la 404 sau 500,
3. citește corpul o singură dată, cu await res.json() sau await res.text() — niciodată ambele.

Demonstrațiile de mai jos apelează un mic server local pornit în același program, așa că rezultatele sunt stabile — codul clientului este exact cel pe care l-ai îndrepta către o adresă reală.


GET și decodare

Sarcina de zi cu zi: faci GET la o adresă, verifici starea și transformi corpul JSON în date cu await res.json(). Acel apel întoarce any, așa că un as UserRecord[] îi spune verificatorului de tipuri ce te aștepți să primești.

Preia o listă în obiecte

Corpul răspunsului devine un UserRecord[], iar de acolo sunt date TypeScript obișnuite — parcurse în buclă și afișate câmp cu câmp.

Prompt
Scrie un program TypeScript care face GET la un tablou JSON de utilizatori cu fetch de la un mic server local pornit în același fișier, verifică codul de stare, transformă corpul răspunsului într-un UserRecord[] cu await res.json() și afișează id-ul și numele fiecărui utilizator.
Ieșire: program TypeScript și rezultatul capturat

POST cu un corp JSON

Trimiterea datelor este imaginea în oglindă: transformi obiectul în text, îl dai ca body cu tipul de conținut potrivit — apoi citești răspunsul serverului, care aici poartă id-ul atribuit de server.

Trimite un obiect, citește răspunsul

Obiectul pleacă sub formă de JSON, iar înregistrarea creată se întoarce cu noul său id 7 — întreaga cale de scriere a unui client de API într-un singur program mic. Node.js afișează obiectul analizat ca { id: 7, name: 'Cleo' }.

Prompt
Scrie un program TypeScript care trimite prin POST un utilizator nou ca JSON cu fetch și tipul de conținut application/json către un mic server local care atribuie un id și răspunde cu 201, apoi citește răspunsul și afișează starea și utilizatorul creat cu noul său id.
Ieșire: program TypeScript și rezultatul capturat