Proxy-gu wuxuu keenaa xogta. Callback-kaaga qoristu wuxuu soo celiyaa qiime khaldan. Markaas libcurl wuu joogsadaa, koodhka hareerihiisana wuxuu soo sheegaa “guuldarro kale oo soo dejinta proxy-ga”.

Callback-ku waa inuu soo sheegaa inta bytes oo la helay uu dhab ahaan maareeyay. Tirada kale soo celinta waxay tilmaantaa guuldarro. Meel qoris oo si ula kac ah u xanniba, qayb waxay u ekaan kartaa sidan:

curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example:8080');
curl_setopt($handle, CURLOPT_WRITEFUNCTION,
    function ($handle, $chunk) use ($sink) {
        $written = fwrite($sink, $chunk);
        return $written === false ? 0 : $written;
    }
);

Tani waxay u malaynaysaa in barnaamijka jira uu leeyahay handle-ka iyo meesha qorista. Qoris guuldareystay ama gaaban ayaa joogsada halkii uu si aamusan u sheegan lahaa in qaybta oo dhan la kaydiyay. Meel aan xannibin waxay u baahan tahay naqshad ku habboon kaydinta iyo joojinta/dib u bilaabista; qaybta yar ma bixiso mid.

Tiri bytes, ma aha xarfaha la muujiyay. Xogtu waxay noqon kartaa binary ama qayb ka mid ah taxane qoraal badan. Hal callback maahan daruuri hal sadar, hal dukumeenti JSON ama hal fariin oo adeegga ka timid.

Falanqaynta tartiib-tartiib ah waxay u baahan tahay xaalad u gaar ah inta u dhaxaysa callbacks. Taa lidkeeda, ururinta qayb kasta ilaa dhammaadka waxay sax noqon kartaa jawaab yar oo xaddidan, laakiin maahan siyaasad xusuus oo loogu talagalay qulqul weyn ama aan dhammaad lahayn.

Hayso natiijada wareejinta iyo caddaynta guuldarada callback-ka. Khalad disk gudaha ah ama joojinta parser-ka ayaa dhici kara ka dib markii la sameeyay waddo proxy oo ansax ah. Haddii aad dooneyso inaad joojiso ka dib prefix, calamadee joojintaas ula kac ah ee callback-ka si gooni ah. Cinwaanka proxy-ga beddelkiisu ma hagaajin karo meel joojisay aqbalaadda xogta.

Maqaallo la xiriira