cURL
è sincrono. Quindi, come fanno le librerie come Guzzle a inviare richieste web asincrone?In che modo Guzzle invia richieste web asincrone?
risposta
Uno dei gestori di trasporto s' il Guzzle è CurlMultiHandler
che utilizza curl_multi_*
funzioni di PHP che consente per i trasferimenti asincroni.
Le richieste vengono avviate in modo asincrono e la funzione curl_multi_select()
consente ad Guzzle
di attendere fino a quando una delle richieste di arricciatura riceve dati ed elaborarli.
Il Guzzle CurlMultiHander avvolge incorporato curl_multi_* funzione di PHP che essenzialmente avvolgere il cURL Multi API
Dai documenti CURL:
Per utilizzare l'interfaccia multi, è necessario prima creare un 'più manico' con curl_multi_init. Questo handle viene quindi utilizzato come input per tutte le ulteriori funzioni curl_multi_ *.
Con un multi-handle e l'interfaccia multipla è possibile eseguire diversi trasferimenti simultanei in parallelo. Ogni singolo trasferimento è costruito attorno a una maniglia semplice. Crei tutte le maniglie facili di cui hai bisogno e configura le opzioni appropriate per ogni maniglia facile usando curl_easy_setopt.
- 1. Tornado blocco richieste asincrone
- 2. Richieste HTTP asincrone in PHP
- 3. Invia e-mail asincrone
- 4. Guzzle che non invia correttamente il corpo POST PSR-7
- 5. Come fare multi-threading con richieste web asincrone
- 6. In attesa di più richieste POST asincrone
- 7. Richieste Ajax asincrone parallele utilizzando jQuery
- 8. elaborazione simultanea/richieste asincrone con Python BaseHTTPServer
- 9. $ http non invia cookie in Richieste
- 10. Attendere la fine delle richieste Ajax asincrone
- 11. In che modo Java invia KeyEvents?
- 12. Ext.Ajax.request che invia le richieste OPTIONS cross-domain quando jQuery.ajax invia GET
- 13. In che modo jQuery realizza le sue animazioni asincrone?
- 14. ASP.NET Ajax.BeginForm invia più richieste
- 15. Come faccio a profilare le richieste di Guzzle 6?
- 16. È necessario un esempio che mostri come eseguire richieste HTTP asincrone
- 17. In che modo Spring Security gestisce SecurityContext in un thread attraverso le richieste di applicazioni Web?
- 18. PHP: Guzzle 6 + Guzzle-cache-middleware
- 19. Set proxy in Guzzle
- 20. Modo corretto per inviare (POST) xml con guzzle 6
- 21. IIS ritarda molto tra ogni risposta con richieste asincrone
- 22. Flask e Ajax Invia richieste 400
- 23. Uso iPhone di mutex con richieste URL asincrone
- 24. Come posso fare in modo che i servizi Web di Spring registrino tutte le richieste SOAP?
- 25. Chiamate HTTP asincrone in Python
- 26. Invia email in modo sicuro
- 27. Parere sulle richieste sincrone nei web worker
- 28. differenza tra chiamate asincrone e chiamate asincrone io in .net
- 29. jQuery.ajax() invia richieste POST come GET in un'estensione Chrome
- 30. In che modo le rotaie risolvono più richieste contemporaneamente?