Что нужно знать про Timeout, retry и cancel token во Flutter/Dart?
Что хотят услышать интервьюеры:
Коротко: Timeout ограничивает ожидание, retry повторяет безопасные операции, а cancel token отменяет ненужный запрос при уходе со страницы.
Ответ:
Где применяется:
- retry уместен не для всех HTTP-методов
- cancellation снижает лишнюю работу
- policy должна учитывать сеть и UX
Пример:
final cancel = CancelToken();
await dio.get('/search', cancelToken: cancel);
cancel.cancel(); Как отвечать на собеседовании: объясните назначение, границы применения и почему это лучше альтернативы в конкретном сценарии. Типичная ошибка: повторять POST без идемпотентности.