pass - Cómo usar la autorización básica en PHP curl
php curl user pass (2)
Estoy teniendo problemas con la solicitud curl de PHP con autorización básica.
Aquí está el curl de línea de comando:
curl -H "Accept: application/product+xml" "https://{id}:{api_key}@api.domain.com/products?limit=1&offset=0"
Lo he intentado configurando el encabezado curl de las siguientes maneras, pero no está funcionando
Authorization: Basic id:api_key
or
Authorization: Basic {id}:{api_key}
Obtengo la respuesta "el parámetro de autenticación en la solicitud falta o no es válido", pero he utilizado id. Apropiado y api_key que funciona en curl de línea de comando (lo probé)
Por favor, ayúdame.
Pruebe el siguiente código:
$username=''ABC'';
$password=''XYZ'';
$URL=''<URL>'';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$URL);
curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout after 30 seconds
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
$result=curl_exec ($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); //get status code
curl_close ($ch);
Puedes probar esto,
$ch = curl_init($url);
...
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
...