Witam.
Mam pewien problem u klienta z rozłączaniem się do API. Tak mi się wydaje, że to to może być problemem, ponieważ jest dość specyficzny.
OPIS SYTUACJI
Aplikacja we Flutterze. Co jakiś interwał wysyła zapisane w urządzeniu dokumenty na serwer (NET 5 WebAPI + Comarch Optima). Użytkownik tworzy dokument, zapisuje w cache (Hive) z odpowiednią flagą (confirmed) i usługa w tle wyłapuje takie dokumenty i wysyła.
PROBLEM
Aplikacja jest w stanie wysłać dane. API jest w stanie te dane zapisać, dokument widnieje w Optimie ale nie potrafi wysłać do aplikacji potwierdzenia i aplikacja twierdzi, że się nie powiodło zapisywanie i próbuje za jakiś czas znowu. Takim sposobem mam ten sam dokument dodany 27 razy (przykład z dzisiaj, były inne przypadki na mniejszą skalę).
PYTANIA
Czy i jak jestem w stanie wyłapać takie przypadki? Zrobienie ifa na sprawdzanie czy taki dokument już istnieje jest średnim rozwiązaniem, ponieważ aplikacja nie dostanie odpowiedzi, że istnieje i będzie cały czas próbować mimo iż duplikacji już nie będzie. Czy to jest kwestia neta? Udało mi się zasymulować to u siebie tylko wyłączając/włączając WiFi. Dokument już dawno jest w systemie ale nie wysłał info o poprawnym dodaniu więc aplikacja wyśle go jeszcze raz. Wygląda to tak jakby udało się zrobić request ale response już nie dochodzi.
PS
Drążę ten temat, ponieważ wydaje mi się, że to nie jest kwestia oprogramowania. Nie dzieje się tak cały czas. Jestem w stanie to pewnie jakoś oprogramowaniem obsłużyć ale chyba nie bardzo wiem jak stąd ten post.