Sobes.tech
Junior — Middle

Milliseid meetodeid saab kasutada taotluse töötlemiseks ja lõpetamiseks frontendis koos staatusega 201 Springis, kui tekib orderNotFound viga?

sobes.tech AI

Vastus AI-lt

Kui frontend'i päringul saadakse staatus 201 (Created), kuid vastuse kehas sisaldub viga orderNotFound, saab seda järgmiselt töödelda:

  1. Kontrollige vastuse keha: Hoolimata staatusest 201, tuleb analüüsida vastuse sisu vigade jaoks.
  2. Viga frontend'is: Näiteks, kui API tagastab JSON-i veavälja, saab kasutajale näidata sobiva sõnumi.
  3. Päringu lõpetamine: Pärast vea töötlemist saab päringu õigesti lõpetada, näiteks UI oleku uuendamise või kasutaja suunamisega.

Näide JavaScriptis fetchi kasutades:

fetch('/api/orders', { method: 'POST', body: JSON.stringify(orderData) })
  .then(response => response.json().then(data => ({ status: response.status, body: data })))
  .then(({ status, body }) => {
    if (status === 201 && body.error === 'orderNotFound') {
      // Vea töötlemine
      alert('Tellimus ei leitud');
      // Täiendavad toimingud, näiteks vormi lähtestamine
    } else if (status === 201) {
      // Tellimus edukalt loodud
      console.log('Tellimus loodud', body);
    } else {
      // Muude staatuside töötlemine
    }
  })
  .catch(error => {
    console.error('Päringu viga:', error);
  });

Nii saab isegi staatusel 201 korral õigesti töödelda viga, kui see on vastuse kehas olemas.