Junior
Unde este cel mai bine să faci solicitări către backend?
sobes.tech AI
Răspuns de la AI
Solicitările către backend sunt cel mai bine efectuate folosind metode asincrone în cod:
-
Pe partea clientului (în browser):
- Cu API-ul
fetchsau o bibliotecă precumAxios. - Potrivit pentru acțiuni interactive ale utilizatorului, încărcare dinamică de date, trimiterea formularelor.
- Permite crearea de SPA (Single Page Applications).
- Se implementează în JavaScript/TypeScript.
// Exemplu cu fetch async function fetchData() { try { const response = await fetch('/api/data'); if (!response.ok) { throw new Error(`Eroare HTTP! status: ${response.status}`); } const data = await response.json(); console.log(data); } catch (error) { console.error('Eroare la preluarea datelor:', error); } } - Cu API-ul
-
Pe partea serverului (de exemplu, cu framework-uri SSR/SSG):
- În framework-uri precum Next.js sau Nuxt.js (pentru React și Vue, respectiv).
- Datele pot fi obținute în timpul compilării (SSG) sau la fiecare solicitare (SSR).
- Îmbunătățește SEO și performanța (mai puține "ecrane albe"), deoarece pagina este redată cu date.
- Permite evitarea problemelor CORS.
- Exemple de metode în Next.js:
getStaticProps,getServerSideProps.
// Exemplu cu Next.js (getServerSideProps) export async function getServerSideProps(context) { const res = await fetch('https://api.example.com/data'); const data = await res.json(); if (!data) { return { notFound: true, // Afișează pagina 404 }; } return { props: { data }, // Transmite datele ca props către componenta paginii }; }
Alegerea depinde de interactivitatea necesară, de nevoia de SEO, de tipul aplicației (SPA, MPA) și de framework-ul utilizat. Se folosește adesea o combinație a acestor abordări.