Sobes.tech
Junior

Kuidas klient saab aru, et serverist saadetud andmed on brauserisse saadetud?

sobes.tech AI

Vastus AI-lt

Kliendi brauser mõistab, et serverilt saadetud andmed on järgmiste märkide järgi:

  1. HTTP olekukood: Vastuvõtt edukast HTTP olekukoodist (näiteks 200 OK).
  2. HTTP päised: Content-Length päise olemasolu ja analüüs (näitab vastuse keha suurust) või Transfer-Encoding: chunked (andmete voogedastuseks).
  3. Vastuse keha: HTTP vastuse keha vastuvõtt, mis sisaldab nõutud andmeid (HTML, JSON, pildid jne.).
  4. DOM sündmused: AJAX-päringute puhul (näiteks kasutades XMLHttpRequest või Fetch API), vastavate sündmuste käivitamine (onload, onreadystatechange koos readyState == 4 ja status == 200).
  5. Võrguühenduse seisund: TCP ühenduse sulgemine pärast kõigi andmete saamist (kui ei kasutata püsivat ühendust).

Näide XMLHttpRequest kasutamisest:

// Andmete vastuvõtu töötlemise näide JavaScriptis
const xhr = new XMLHttpRequest();
xhr.open('GET', '/api/data', true);

xhr.onload = function() {
  if (xhr.status === 200) {
    // Andmed on edukalt saadud ja töödeldud
    console.log('Saadud andmed:', xhr.responseText);
  } else {
    // Tekkis viga
    console.error('Andmete saamise viga:', xhr.statusText);
  }
};

xhr.onerror = function() {
  // Võrgu viga
  console.error('Võrgu viga');
};

xhr.send();