Почему в коде не срабатывают переповторы?
Предлагаем размяться и решить реальную задачку от наших коллег-джавистов.
Представь: разработчик одного банка Пётр писал интеграцию с СБП по запросу данных QR-кода. В клиентской части он заложил таймауты и переповторы. Но при очередных сбоях интернета он заметил, что его приложение при неполучении ответа от сервера не делает переповторов.
💻 Вот код Петра: fun getQr(qrcId: String): Mono<QrData> { ⠀⠀return webClient.get() ⠀⠀⠀.uri(“/sbp/qr/{qrcId}”, qrcId) ⠀⠀⠀.retrieve() ⠀⠀⠀.bodyToMono<QrData>() ⠀⠀⠀.retry(5) ⠀⠀⠀.timeout(Duration.ofSeconds(1)) }
Где спряталась ошибка и как её исправить?
➡️ Делись ответом в комментариях, а в конце недели вернёмся с разбором задачи.
· 30.07
Я не джавист, но полагаю, что порядок нарушен, timeout последний в цепочке. А должен быть перед retry.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён