Estoy tratando de obtener la respuesta & los encabezados de respuesta de CURL utilizando PHP, específicamente para Content-Disposition: archivo adjunto; para que pueda devolver el nombre de archivo pasado dentro del encabezado. Esto no parece ser devuelto dentro de curl_getinfo.Devolver encabezado como matriz usando Curl
He intentado usar HeaderFunction para llamar a una función para leer los encabezados adicionales, sin embargo, no puedo agregar el contenido a una matriz.
¿Alguien tiene alguna idea, por favor?
continuación es parte de mi código, que es una clase contenedora Curl:
...
curl_setopt($this->_ch, CURLOPT_URL, $this->_url);
curl_setopt($this->_ch, CURLOPT_HEADER, false);
curl_setopt($this->_ch, CURLOPT_POST, 1);
curl_setopt($this->_ch, CURLOPT_POSTFIELDS, $this->_postData);
curl_setopt($this->_ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->_ch, CURLOPT_USERAGENT, $this->_userAgent);
curl_setopt($this->_ch, CURLOPT_HEADERFUNCTION, 'readHeader');
$this->_response = curl_exec($this->_ch);
$info = curl_getinfo($this->_ch);
...
function readHeader($ch, $header)
{
array_push($this->_headers, $header);
}
Debo agregar que la función readHeader es parte de la clase de envoltura de curl. Usar '$ this-> readHeader' no funciona. – StuffandBlah
De acuerdo con los documentos, su función 'readHeader' debe devolver el número de bytes escritos. Agregar 'return strlen ($ header)' debería hacer que esto funcione – marcfrodi