Я использую библиотеку http dart для выполнения запросов REST API (GET, POST) к удаленному серверу.
Когда сервер не работает, время ожидания запросов истекает.
Существует ли ограничение по времени для запросов по умолчанию, после которого выдается исключение Connection timed out? Если да, то каков этот срок?
Мы попытались зарегистрировать отметку времени до и после выполнения запроса. Разница двух временных меток составила 30 мс. Но мы не знаем, является ли это стандартной конфигурацией библиотеки dart.
Тайм-аут по умолчанию для HTTP-запроса, сделанного через dart:io's HttpClient, зависит от тайм-аута по умолчанию для ОС, поэтому трудно точно сказать, какой тайм-аут следует ожидать.
Однако вы можете настроить тайм-аут, установив для connectionTimeout в экземпляре HttpClient ненулевое значение Duration, если вы хотите иметь одинаковую продолжительность тайм-аута соединения на разных платформах.
Тайм-ауты, вероятно, где-то доступны, но их может быть трудно найти для Android, поскольку они могут отличаться в зависимости от версии ОС/устройства. Если вы хотите, чтобы все было как можно более последовательным, я настоятельно рекомендую установить собственный тайм-аут.
Эй, во-первых, большое спасибо за ваш ответ, он действительно помогает. Известно ли время ожидания по умолчанию на Android и iOS? А в Андроиде тоже зависит от ОС производителя?