Carson a dh'fhaodas sruth cuirp Guzzle a bhith air a bhufadh fhathast
Faodaidh eadar-aghaidh a' chuirp, lìbhrigeadh a' ghiùlanais agus do pharsair fhèin bufadh gu neo-eisimeileach. Cleachd stream gu soilleir agus cùm an caitheamh mean air mhean.
getBody() tillidh e eadar-aghaidh srutha eadhon nuair a tha Guzzle air am freagairt a luchdadh a-nuas mu thràth. Gus lìbhrigeadh lìonra mean air mhean a shireadh tro neach-ionaid adhartach, suidhich stream air an iarrtas:
$response = $client->request('GET', 'https://example.com/stream', [
'proxy' => 'http://proxy.example:8080',
'stream' => true,
'read_timeout' => 10,
]);
$body = $response->getBody();
Bidh seo a' cleachdadh neach-dèiligidh a tha ann mar-thà; airson ceann-uidhe HTTP poblach, tagh seòladh bhon liosta neach-ionaid HTTP agus cuir an àite URL an neach-ionaid san eisimpleir. Tha taic srutha an urra ris an neach-làimhseachaidh aige; chan urrainn don eadar-aghaidh srutha leis fhèin innse dhut an do lìbhrig an neach-làimhseachaidh an cuirp mean air mhean.
Aon uair sa thig am freagairt, lean ort a' leughadh earrannan cuibhrichte. Bidh tionndadh $body gu sreang a' cruinneachadh a' chuirp gu lèir a-rithist. Faodaidh parsair loidhne a bhith a' coimhead crochte cuideachd fhad 's a tha e a' feitheamh ri loidhne ùr, eadhon nuair a tha bytes lìonra air tighinn. Is dàil caitheamh a tha seo, mar sin cha toir atharrachadh an neach-ionaid air falbh iad.
read_timeout a' cuibhreachadh feitidhean leughaidh fa leth fon bhuileachadh srutha a tha a' faighinn taic. Chan eil e a' toirt beatha iomlan de dheich diogan do bhiadh gun chrìch. Làimhsich ùine-crìche, EOF agus mearachdan air leth, agus dùin an corp nuair a thig no a chuirear am pròiseasadh gu crìch.