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); }
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