Sobes.tech
Junior — Middle

Кадом усулҳо метавонанд барои коркард ва анҷом додани дархост дар фронтенд бо статуси 201 дар ҳолати хато orderNotFound дар Spring истифода шаванд?

sobes.tech AI

Ҷавоб аз AI

Агар фронтенд дээр хүсэлт ирэхэд статус 201 (Created) гарч, гэхдээ хариуны бие дотор orderNotFound алдаа агуулагдаж байвал үүнийг дараах байдлаар боловсруулж болно:

  1. Хариуны биеийг шалгах: Статус 201 байгаад ч гэсэн, хариуны агуулгыг алдааны шалгуурт нийцүүлэн шинжлэх хэрэгтэй.
  2. Фронтенд дээр алдааг боловсруулалт хийх: Жишээ нь, API нь алдааны талбартай JSON буцааж байвал, хэрэглэгчид тохирсон мессеж харуулах.
  3. Хүсэлтийг дуусгах: Алдааг боловсруулсны дараа, хүсэлтийг зөв зохистой дуусгах, жишээ нь UI-ийн төлөвийг шинэчлэх эсвэл хэрэглэгчийг чиглүүлэх.

JavaScript дээр fetch ашиглан жишээ:

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') {
      // Алдааг боловсруулалт хийх
      alert('Захиалга олдсонгүй');
      // Нэмэлт үйлдлүүд, жишээ нь маягтыг дахин тохируулах
    } else if (status === 201) {
      // Захиалга амжилттай үүссэн
      console.log('Захиалга үүслээ', body);
    } else {
      // Бусад статусуудыг боловсруулалт хийх
    }
  })
  .catch(error => {
    console.error('Хүсэлтийн алдаа:', error);
  });

Ингэж, статус 201 байгаад ч гэсэн, хариуны бие дотор алдаа байвал зөв зохистой боловсруулж болно.