Sobes.tech
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:

  1. Pe partea clientului (în browser):

    • Cu API-ul fetch sau o bibliotecă precum Axios.
    • 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);
      }
    }
    
  2. 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.