"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo puedo extraer cookies de una respuesta PHP Curl en una variable?

¿Cómo puedo extraer cookies de una respuesta PHP Curl en una variable?

Publicado el 2025-02-07
Navegar:152

How Can I Extract Cookies from a PHP Curl Response into a Variable?

recuperando las cookies de la respuesta de php curl en una variable

en ciertos escenarios, las respuestas de la API externa pueden estar inexplicablemente incrustadas como cookies dentro del encabezado HTTP , en lugar de utilizar protocolos de comunicación convencionales como jabón o descanso. Para facilitar la extracción de estas cookies en una matriz estructurada sin recurrir a un análisis laborioso, se puede emplear la siguiente técnica. Código:

$ ch = curl_init ('http://www.google.com/'); curl_setopt ($ ch, curlopt_returntransfer, 1); // recuperar los encabezados también curl_setopt ($ ch, curlopt_header, 1); $ result = curl_exec ($ ch);

$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Retrieve headers too
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);

// extraer cookies usando expresiones regulares preg_match_all ('/^set-cookie: \ s*([^;]*)/mi', $ resultado, $ coincidentes);

// Extract cookies using regular expressions
preg_match_all('/^Set-Cookie:\s*([^;]*)/mi', $result, $matches);

$ cookies = array (); foreach ($ coincide [1] como $ item) { parse_str ($ item, $ cookie); $ cookies = array_merge ($ cookies, $ cookie); }

$cookies = array();
foreach($matches[1] as $item) {
    parse_str($item, $cookie);
    $cookies = array_merge($cookies, $cookie);
}
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3