Bonjour, s'il vous plait j'interoge une API de l'application ZK Bio time, pour recupérer la liste des utilisateurs, malheureusement j'ai une erreur (string(58) "{"detail":"Informations d'authentification non fournies."}"). voici mon code :

<?php

// Endpoint pour obtenir le token
$token_url = 'http://127.0.0.1/jwt-api-token-auth/';

// Informations d'identification pour l'API
$username = 'admin';
$password = 'Api12345678';

// Données à envoyer avec la requête POST
$post_data = array(
'username' => $username,
'password' => $password
);

// Initialisation de cURL
$curl = curl_init();

// Configuration de la requête POST
curl_setopt_array($curl, array(
CURLOPT_URL => $token_url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => http_build_query($post_data),
CURLOPT_SSL_VERIFYHOST => false, // Désactiver la vérification du certificat
CURLOPT_SSL_VERIFYPEER => false,
));

// Exécution de la requête et récupération de la réponse
$response = curl_exec($curl);

// Vérification de la réponse
if ($response === FALSE) {
// Gestion des erreurs
echo 'Erreur lors de la récupération du token : ' . curl_error($curl);
} else {
// Analyse de la réponse JSON pour extraire le token
$data = json_decode($response, true);
if (isset($data['token'])) {
// Récupération du token
$token = $data['token'];

// Utilisation du token dans une autre requête vers une ressource protégée par l'API
$resource_url = 'http://127.0.0.1/personnel/api/employees/';
// Exemple de requête avec le token dans l'en-tête d'autorisation
$headers = array(
'Authorization: JWT '.$token
);

// Initialisation d'une nouvelle session cURL
$curl_resource = curl_init();
curl_setopt_array($curl_resource, array(
CURLOPT_URL => $resource_url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => $headers,
CURLOPT_SSL_VERIFYHOST => false, // Désactiver la vérification du certificat
CURLOPT_SSL_VERIFYPEER => false,
));

// Exécution de la requête et récupération de la réponse de la ressource
$resource_response = curl_exec($curl_resource);

// Vérification de la réponse de la ressource
if ($resource_response === FALSE) {
// Gestion des erreurs
echo 'Erreur lors de la récupération de la ressource : ' . curl_error($curl_resource);
} else {
// Affichage de la réponse de la ressource
echo 'Réponse de la ressource protégée : ' . $resource_response;

}

// Fermeture de la session cURL pour la ressource
curl_close($curl_resource);
} else {
// Gestion des cas où le token n'est pas trouvé dans la réponse
echo 'Token non trouvé dans la réponse';
}
}

// Fermeture de la session cURL
curl_close($curl);

?>

Voici la documentation de l'API :

Get JWT Auth Token

Request

Method: POST

Url: /jwt-api-token-auth/

Headers:

Content-Type: application/json
Body: {
"username": "username",
"password": "password"
}

Request
Method: GET

Url: /personnel/api/employees/
Headers:
Content-Type: application/json
Authorization: "JWT ey.........oQi98"

Aucune réponse