Сила скручивания к Тайм-ауту

Я пытаюсь проверить условия тайм-аута, используя curl, и заставить веб-сайт отключиться. Вот мои настройки скручивания:

curl_setopt_array($curl, array(
CURLOPT_URL => "https://app.sample.com/api/abc/changelogs?last=3",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 0,
CURLOPT_TIMEOUT => 0,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache"),
));

-1

Решение

Согласно документация, CURLOPT_CONNECTTIMEOUT является целым числом:

Количество секунд ожидания при попытке подключения. Используйте 0, чтобы ждать бесконечно.

Если у вас есть cURL> = 7.16.2 и PHP> = 5.2.3, вы можете использовать CURLOPT_CONNECTTIMEOUT_MS:

Количество миллисекунд ожидания при попытке подключения. Используйте 0, чтобы ждать бесконечно. Если libcurl создан для использования стандартного распознавателя имен системы, эта часть соединения будет по-прежнему использовать разрешение в полсекунды для тайм-аутов с минимально допустимым тайм-аутом, равным одной секунде.

Хотя не стоит путать это с CURLOPT_TIMEOUT а также CURLOPT_TIMEOUT_MS:

CURLOPT_TIMEOUT — Максимальное количество секунд, которое разрешено выполнять функциям cURL.
CURLOPT_TIMEOUT_MS — Максимальное количество миллисекунд, чтобы разрешить выполнение функций cURL. Если libcurl создан для использования стандартного распознавателя имен системы, эта часть соединения будет по-прежнему использовать разрешение в полсекунды для тайм-аутов с минимально допустимым тайм-аутом, равным одной секунде.

Очевидная разница в том, что CURLOPT_CONNECTTIMEOUT время ожидания до смерти скрипта, если нет соединения; в то время как CURLOPT_TIMEOUT убивает скрипт через определенное количество секунд.

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector