Spring WebClient da proksi xatolari: reaktiv ishlash va jurnalga yozish
Proksi ishlamay qolganda WebClient ning reaktiv xato signali, transport jurnali va HTTP holatini qayta ishlashni farqlang.
Transport muvaffaqiyatsiz proksi ulanishini jurnalga yozishi mumkin, shu bilan birga ilova ham reaktiv xatoni qabul qilib, qayta ishlaydi. Faqat jurnal yozuvi ilovaning ishlovchisi o'tkazib yuborilganini isbotlamaydi.
Xato signalini haqiqatda obuna bo'linadigan zanjirda kuzating. Faqat Mono quradigan kod atrofidagi try/catch keyingi tarmoq nosozligini qayta ishlashdan boshqa doiradir.
| Operator | Ta'sir |
|---|---|
| doOnError | Xato davom etayotganda yon ta'sir bajaradi |
| onErrorMap | Bir xatoni boshqa xatoga aylantiradi |
| onErrorResume | Muqobil nashriyotchiga o'tadi |
Ilovaga kerak bo'lgan xatti-harakatni tanlang. Ko'rsatkichni yozib olish soxta muvaffaqiyatli tarkibni qaytarishni talab qilmaydi. Muqobil javob ilovaning ataylab qilingan natijasi bo'lishi kerak, muvaffaqiyatsiz marshrutni yashirish usuli emas.
Shuningdek, transport istisnolarini olingan HTTP xato holatlaridan farqlang. Proksi ulanishi oddiy manzil javobi paydo bo'lishidan oldin ham ishlamasligi mumkin, shuning uchun HTTP holati ishlovchisiga tekshiradigan narsa bo'lmasligi mumkin. Past darajadagi nosozlikni aniqlashda WebClientRequestException sababini saqlang.
Jurnalni faqat natijani tushungandan keyin sozlang. Butun transport jurnalini o'chirish keyingi taym-aut, TLS muammosi yoki autentifikatsiya nosozligi uchun kerakli dalillarni olib tashlashi mumkin, reaktiv quvur xatti-harakatini o'zgartirmasdan.