Maison >développement back-end >tutoriel php >Comment corriger les erreurs « Paramètres d'authentification manquants ou invalides » lors de l'utilisation de PHP Curl avec une autorisation de base ?

Comment corriger les erreurs « Paramètres d'authentification manquants ou invalides » lors de l'utilisation de PHP Curl avec une autorisation de base ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-10 22:42:03364parcourir

How to Fix

Dépannage de l'autorisation de base PHP Curl

Lors de l'utilisation de PHP curl avec une autorisation de base, il est crucial de s'assurer que les informations d'identification sont correctement formatées. Les étapes suivantes expliquent comment résoudre le problème « Les paramètres d'authentification dans la requête sont manquants ou non valides » lors de l'utilisation d'une autorisation de base avec PHP curl.

La requête de ligne de commande curl fournie utilise la syntaxe {id} :{api_key} avant l'URL, ce qui diffère de la manière habituelle de spécifier les informations d'identification dans l'en-tête curl.

En PHP, l'approche correcte consiste à utiliser les options CURLOPT_HTTPAUTH et CURLOPT_USERPWD fournies par curl. Le code suivant montre comment définir efficacement ces options :

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

Ce code établit l'URL, les informations d'identification de l'utilisateur (nom d'utilisateur et mot de passe) et le type d'autorisation (CURLAUTH_ANY) à l'aide de l'option CURLOPT_HTTPAUTH. CURLAUTH_ANY permet à la fois une authentification de base et une authentification résumée, garantissant la compatibilité avec différentes méthodes d'authentification.

L'option CURLOPT_USERPWD est utilisée pour transmettre les informations d'identification sous la forme d'une chaîne "$username:$password". Cela formate correctement les informations d'identification sans avoir besoin d'un codage ou d'une modification supplémentaire.

En utilisant la syntaxe et les options correctes pour CURLOPT_HTTPAUTH et CURLOPT_USERPWD, vous devriez être en mesure d'établir avec succès l'autorisation de base avec PHP curl et de résoudre l'erreur d'authentification. .

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn