1

J'ai de la difficulté à obtenir des données en utilisant le repos assuré. pour obtenir des données, je dois m'authentifier en utilisant basic_digest. Pour obtenir l'authentification, j'utilise deux requêtes Http. le premier est pour la connexion et le second est pour obtenir des données. voici mon code:Authentification basic_digest sur Rest Assured

try { 
     //my first http request 
     response = given().auth().digest("id","pass"). 
     when().get("http://localhost:8080/login"). 
     then().statusCode(200).extract().response(); 

     ////my second http request 
     response = given(). 
       when().get("http://localhost:8080/getToken"). 
       then().statusCode(200).body("access_token","token") 
       .extract().response(); 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

Je ne sais pas pourquoi, je toujours obtenir erreur sur la deuxième requête HTTP (première requête http est très bien) « est nécessaire authentification complète pour accéder à cette ressource ». il semble que l'authentification digest lors de la première requête http n'affecte pas la deuxième requête http. comment dois-je faire pour résoudre le problème? quand j'essaye de le créer sur Jmeter, ça fonctionne bien.

+0

Comment authentifiez-vous la deuxième demande? – Adam

+0

J'ajoute auth(). Digest ("id", "pass") à la deuxième requête mais cela ne fonctionne toujours pas. copier l'ID de la session et ajouter des cookies ne peut toujours pas m'aider – Hendrione

Répondre

0

L'authentification de base et l'authentification digest sont généralement effectuées dans chaque requête et vous devez donc fournir les détails d'authentification à chaque requête. Rest Assured vous permet de définir re-usable specifications ou de définir les détails d'authentification de manière statique, de sorte que vous n'avez pas besoin de les dupliquer pour chaque requête manuellement. Par exemple:

RestAssured.authentication = digest("id", "pass");