Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich Header und Body in PHP-cURL-Anfragen effizient trennen?

Wie kann ich Header und Body in PHP-cURL-Anfragen effizient trennen?

Susan Sarandon
Susan SarandonOriginal
2024-12-31 06:39:11238Durchsuche

How Can I Efficiently Separate Headers and Body in PHP cURL Requests?

Abrufen von Headern und Text in PHP-cURL-Anfragen

Beim Erstellen von cURL-Anfragen mit PHP kann das Abrufen sowohl der Antwortheader als auch des Texts ein Problem sein Herausforderung. Die Option CURLOPT_HEADER gibt zwar den Textkörper zusammen mit den Headern zurück, erfordert jedoch eine manuelle Analyse, um den Textkörper zu extrahieren. Erwägen Sie für eine effizientere und sicherere Lösung den folgenden Ansatz:

Lösung:

Wie in der PHP-Dokumentation vorgeschlagen, verwenden Sie eine Kombination aus CURLOPT_RETURNTRANSFER und dem Abrufen der Headergröße von CURLINFO_HEADER_SIZE ermöglicht die Trennung von Headern und body:

// Initialize cURL
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);

// Execute the request
$response = curl_exec($ch);

// Extract header size
$header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);

// Separate headers and body
$header = substr($response, 0, $header_size);
$body = substr($response, $header_size);

Achtung:

Obwohl diese Lösung im Allgemeinen zuverlässig ist, funktioniert sie möglicherweise nicht konsistent, wenn Proxyserver verwendet werden oder bestimmte Arten von Weiterleitungen verarbeitet werden. In solchen Fällen können alternative Ansätze, wie der in der ursprünglichen Frage genannte, zuverlässigere Ergebnisse liefern.

Das obige ist der detaillierte Inhalt vonWie kann ich Header und Body in PHP-cURL-Anfragen effizient trennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn