Ama-callback okubhala e-PHP cURL kufanele abuyisele inani lamabhayithi asetshenziwe
Hlonipha isivumelwano sokubalwa kwamabhayithi lapho usebenzisa izingxenye zempendulo ye-proxy, futhi wehlukanise ukwehluleka kokubhala kwendawo nokuxhumana kwe-proxy okwehlulekile.
I-proxy iletha idatha. I-callback yakho yokubhala ibuyisela inani elingalungile. Khona-ke i-libcurl iyama, futhi ikhodi ezungezile ibika “ukwehluleka kokulanda nge-proxy” okunye.
I-callback kufanele ibike ukuthi mangaki amabhayithi atholiwe eyawasetshenzisa ngempela. Ukubuyisela enye inombolo kukhombisa ukwehluleka. Esikhaleni sokubhala esivimbela ngamabomu, ucezu lungabukeka kanje:
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;
}
);Lokhu kucabanga ukuthi uhlelo olukhona lungumnikazi we-handle nendawo yokubhala. Ukubhala okwehlulekile noma okufushane kuyama esikhundleni sokusho buthule ukuthi lonke ucezu lulondoloziwe. Indawo engavimbeli idinga umklamo ofanele wokugcina kanye nokumisa/ukuqhubeka; ucezu oluncane alunikezi lolo.
Bala amabhayithi, hhayi izinhlamvu ezibonisiwe. Idatha ingaba yi-binary noma ingxenye yokulandelana kombhalo wamabhayithi amaningi. I-callback eyodwa ayidingeki ukuba ibe umugqa owodwa, idokhumenti ye-JSON eyodwa noma umlayezo ovela kusevisi.
Ukuhlaziya okwandayo kudinga isimo sako phakathi kwama-callback. Ngokuphambene, ukuqoqa ucezu ngalunye kuze kuphele kungase kulunge empendulweni encane enomkhawulo, kodwa akusona isu lememori emfudumalweni omkhulu noma ongapheli.
Gcina umphumela wokudlulisela kanye nobufakazi bokwehluleka kwe-callback. Iphutha lediski lendawo noma ukuma kwe-parser kungenzeka ngemva kokusungulwa komzila we-proxy ovumelekile. Uma uhlose ukuma ngemva kwe-prefix, maka ngokwehlukile lokho kuma okwe-callback okuhlosiwe. Ukushintsha ikheli le-proxy akukwazi ukulungisa indawo eye yeka ukwamukela idatha.