Is féidir le haischliú scríofa cURL réimír theoranta den chorp a choinneáil agus an t-aistriú a stopadh nuair a shroichtear an teorainn sin. Úsáid do bhratach féin chun an stopadh d'aon ghnó sin a aithint thar theip scríofa eile.

Le haghaidh láimhseála nua a bhfuil a URL sprice cumraithe cheana:

$limit = 32768;
$prefix = '';
$limitReached = false;

curl_setopt_array($ch, [
    CURLOPT_PROXY => 'socks5h://proxy.example.net:1080',
    CURLOPT_HEADER => false,
    CURLOPT_WRITEFUNCTION => function ($handle, $chunk)
        use (&$prefix, &$limitReached, $limit) {
        $remaining = $limit - strlen($prefix);
        $prefix .= substr($chunk, 0, $remaining);

        if (strlen($prefix) >= $limit) {
            $limitReached = true;
            return 0;
        }

        return strlen($chunk);
    },
]);

$result = curl_exec($ch);
$error = curl_errno($ch);

$expectedStop = $limitReached && $error === CURLE_WRITE_ERROR;
if ($result === false && !$expectedStop) {
    throw new RuntimeException(curl_error($ch), $error);
}

Iarrann scéim socks5h URL an tseachfhreastalaí ar an seachfhreastalaí óstainm na sprice a réiteach. Chun tástáil cheadaithe ar sprioc phoiblí ar an láimhseáil nua a thaispeántar, is féidir le hiontráil gan chuntas ó liosta seachfhreastalaithe SOCKS5 an t-aonad críochphointe sin a sholáthar. Coinníonn fíorú teastais TLS a ghnáthshocruithe.

Nuair a fhilltear nialas ar smután nach bhfuil folamh, cuirtear in iúl do libcurl nár ghlac an t-aischliú leis na sonraí a soláthraíodh. Stopann sé le CURLE_WRITE_ERROR. Ní mheastar anseo ach an teaglaim den earráid sin agus de bhratach limitReached an aischliú a bheith ionchasach.

Críochnaíonn freagra níos giorra ná an teorainn go normálta. Ag an teorainn nó os a chionn, ní choinníonn prefix níos mó ná 32 KiB fiú má fhaigheann an t-aischliú deireanach smután níos mó. Athraíonn méideanna smután; ní gealltanas ar ghlaonna de fhad seasmhach é méid maoláin a iarrtar.

Cuireann sé seo teorainn leis an gcorp a choinnítear, ní le gach beart atá maolánáilte nó aistrithe cheana ar an nasc. Is féidir leis an réimír críochnú laistigh de charachtar ilbheartach, de luach JSON nó d'eilimint HTML, mar sin ná glac leis gur doiciméad iomlán inchíoradh é.

Ailt ghaolmhara