Bonjour,
j'ai une web appilcation qui permet de generer un rapport, de le publier et de le telecharger en pdf.
A chaque fois, je me connecte avec un username et password pour acceder a mon compte, puis je rentre des données et je peux ensuite générer un rapport que je peux télécharger en PDF.
Donc ce fichier PDF est différent à chaque fois que je le génère puisque les données que je rentre seront differents et de ce fait l'URL de telechargement est dynamique et unique pour chaque fichier pdf.
Ce que je voudrai faire, c'est de tester que mon fichier PDF est bien généré et existe bien.
Donc la methode de télécharger le fichier par son URL ne fonctionne pas car il me téléchargera toujours le meme fichier.
En cherchant sur Google, j'ai vu qu'il faut lancer une requete json en java pour connaitre la session id de la page actuel du telechargement.
Comment faire pour lancer une requete json en java?
ou peut-on le faire autrement?
Le but ce n'est pas vraiment de télécharger le fichier mais de voir que ce fichier existe et qu'il est téléchargeable.
Mais une ce tes passé, sur le fichier PDF, je pourrai faire d'autres tests comme vérifier sa tailler, son nom; sa date de création etc etc puis le supprimer.
J'ai trouvé ceci sur google mais cela ne m'aide pas a trouver la sessin id:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.DefaultHttpClient; public class Post { public static void main(String[] args) throws ClientProtocolException, IOException { HttpClient client = new DefaultHttpClient(); HttpPost post = new HttpPost("http://grooveshark.com/login"); StringEntity input = new StringEntity( "{\"username\":\"Test\",\"paswword\":\"XXXX\"}"); // here // instead // of JSON // you can // also have // XML input.setContentType("application/json"); post.setEntity(input); HttpResponse response = client.execute(post); BufferedReader rd = new BufferedReader(new InputStreamReader(response .getEntity().getContent())); String line = ""; while ((line = rd.readLine()) != null) { System.out.println(line); } } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; public class Test2 { public static void main(String[] args) throws ClientProtocolException, IOException { HttpClient client = new DefaultHttpClient(); HttpGet request = new HttpGet("http://grooveshark.com/login"); HttpResponse response = client.execute(request); BufferedReader rd = new BufferedReader(new InputStreamReader(response .getEntity().getContent())); String line = ""; while ((line = rd.readLine()) != null) { System.out.println(line); } } }
Merci
Partager