Heim  >  Fragen und Antworten  >  Hauptteil

PHP cURL: Spezifische Antwort-Header-Informationen lesen

<p>Ich verwende cURL in PHP, um eine POST-Anfrage zu stellen, um Daten an ein Terminal zu senden, das eine Ressource erstellt. Es wird eine 201-Antwort mit einem Location-Header zurückgegeben, der die URL der erstellten Ressource angibt. Ich erhalte auch einige Informationen aus dem Text der Antwort. <br /><br />Wie erhält man am besten den Klartexttext der Antwort und den Wert des Location-Headers? Die Funktion „curl_getinfo“ gibt keine Informationen für diesen Header zurück, wenn ich Folgendes versuche: </p><p><br /></p> <pre class="brush:php;toolbar:false;">curl_setopt($ch, CURLOPT_HEADERFUNCTION, function($ch, $header) { var_dump($header); });</pre> <p>Ich sehe nur einen ausgegebenen Header, nämlich den Antwortcode „HTTP/1.1 201 erstellt“. </p>
P粉395056196P粉395056196463 Tage vor470

Antworte allen(1)Ich werde antworten

  • P粉713866425

    P粉7138664252023-08-07 11:27:20

    $ch = curl_init();
    
    curl_setopt($ch, CURLOPT_URL, 'http://www.google.com/');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HEADER,true);
    
    $result = curl_exec($ch);
    
    curl_close($ch);
    
    list($headers, $content) = explode("\r\n\r\n",$result,2);
    
    // Print header
    foreach (explode("\r\n",$headers) as $hdr)
        printf('<p>Header: %s</p>', $hdr);
    
    // Print Content
    echo $content;

    Antwort
    0
  • StornierenAntwort