Wie man eine cUrl-Anfrage, ohne dass die Reaktion?
Normalerweise Poste ich Daten, wenn ich einleiten cURL. Und ich warte auf die Antwort, analysieren, etc...
Möchte ich einfach post-Daten, und nicht warten, für jede Antwort.
In anderen Worten, kann ich das senden von Daten an eine Url, über cURL und schließe meine Verbindung sofort? (wartet nicht auf eine Antwort, oder sogar um zu sehen, ob die url vorhanden ist)
Es ist nicht eine normale Sache zu Fragen, aber ich Frage trotzdem.
Hier ist, was ich habe, so weit:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $MyUrl);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_to_send);
curl_exec($ch);
curl_close($ch);
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich glaube, der einzige Weg, um nicht tatsächlich erhalten die gesamte Antwort von der remote-server wird durch die Verwendung
CURLOPT_WRITEFUNCTION
. Zum Beispiel:Wichtige Hinweise
CURLOPT_RETURNTRANSFER
, da dies zu Problemen mit der write-callback.Könnten Sie tun dies durch die
curl_multi_*
Funktionen, die entworfen sind, um die Ausführung von mehreren gleichzeitigen Anfragen - nur Feuer aus einer Anfrage und nicht die Mühe zu Fragen, für die Antwort.Nicht sicher, was die Auswirkungen sind in Bezug auf das, was geschehen wird, wenn das Skript beendet, und curl läuft immer noch.
Nicht sicher, ob das hilft, aber über Kommandozeilen-ich nehme an, Sie könnte verwenden Sie die '--max-time " - option "Maximale Zeit in Sekunden, die Sie ermöglichen, die ganze operation zu nehmen".
Musste ich etwas tun, schnell und schmutzig und wollte Sie nicht haben, um re-Programm-code oder auf eine Antwort warten, so fand die --max-time-option in der curl-manual
curl --max-Zeit 1 URL