Зависит ... Если действие вызвано взаимодействием с пользователем, сообщите ему.Пользователь может решить, как часто он хочет повторить попытку.Код может повториться самостоятельно, но если это тайм-аут, то пользователь может подождать несколько минут (или прервать действие, не получая никакой обратной связи).
Если это фоновая задача, попробуйте еще раз после некоторой задержки(но не бесконечно - в конце концов прервите действие).Вы можете повторно инициализировать соединение, чтобы убедиться, что это зависит от используемой технологии и если вы используете пул соединений.
Конечно, если вы хотите тратить больше времени, вы можете по-разному обрабатывать разные ошибки.Прежде всего, отличите постоянные ошибки (повторная попытка через несколько минут не поможет) от случайных ошибок (может быть в следующий раз все будет в порядке).Например, при разорванном соединении вы можете повторить попытку с новым (возможно, брандмауэр сбросил открытое соединение из-за неактивности).Но вы, вероятно, не можете ничего сделать с тайм-аутом (может быть, проблема с конфигурацией сети) или «HTTP 404 не найден» (при условии, что вы не можете изменить URL-адрес, который вы используете для вызова HTTP).мог собрать все эти знания в компоненте «диагностика и ремонт».
Я также рекомендую прочитать «Отпустите!».