PHP cURL avec autorisation de base
PHP cURL offre une méthode simplifiée pour établir une autorisation de base dans les requêtes HTTP. Bien que cela soit souvent simple, l'implémenter correctement peut s'avérer difficile.
Dans des cas comme le vôtre, où la ligne de commande cURL réussit mais son homologue PHP échoue, le problème réside souvent dans la définition correcte de l'en-tête d'autorisation. Vous avez essayé différents formats tels que « Autorisation : Basique {id} :{api_key} » et « Autorisation : Base id:api_key », mais il se peut qu'ils ne respectent pas la syntaxe requise.
Pour remédier à ce problème, utilisez l'extrait de code suivant :
$username='{id}'; $password='{api_key}'; $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);
Dans ce code révisé, nous spécifions le nom d'utilisateur ($username) au lieu de "{id}" et le mot de passe ($mot de passe) au lieu de "{api_key}". De plus, nous définissons CURLOPT_HTTPAUTH sur CURLAUTH_ANY, permettant la prise en charge de divers schémas d'authentification, y compris l'authentification de base.
Cette approche permet une autorisation de base appropriée via PHP cURL, résolvant votre problème et fournissant une solution plus robuste.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!