Interacțiunea cu API-uri externe (HttpClient)
Blazor WebAssembly vine cu suport integrat pentru HttpClient, care permite aplicației tale să comunice cu API-uri externe RESTful. În acest articol, explorăm cum să faci asta corect, cu un exemplu real și separare pe servicii.
🔧 Ce este HttpClient?
HttpClient este o clasă din .NET folosită pentru a trimite cereri HTTP către un server. În Blazor WebAssembly, este injectat automat cu o configurație de bază (rooted pe adresa site-ului tău). Pentru cereri către domenii externe, trebuie să setezi BaseAddress manual.
✅ Pași Recomandați
-
Crearea unui serviciu dedicat
-
Gestionarea răspunsurilor (inclusiv erori)
-
Tipuri de cereri (GET / POST)
-
Serializare / Deserializare JSON
-
Utilizare cu async/await și feedback în UI
🧪 Exemplu: Consumul unui API public de postări
Vom folosi JSONPlaceholder pentru a obține o listă de postări.
📁 Model: Post.cs
🧩 Serviciu: PostService.cs
🧱 Înregistrare în Program.cs
🖥️ Componentă Blazor: Posts.razor
🧠 Best Practices
-
Folosește servicii dedicate pentru apeluri HTTP
-
Gestionează erorile API cu try/catch și mesaje informative
-
Nu uita de HttpClientFactory în aplicațiile Blazor Server sau .NET MAUI
-
Pentru POST/PUT, folosește JsonContent.Create() începând cu .NET 8
Vrei să comunici cu un API propriu? Poți începe de aici și apoi integra cu backend-ul tău ASP.NET Core.