gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 19 m 29 s |
|
|
Topic pour recenser tous les bugs de mon maaaaaaaagnifique programme
====================================
Suite quelques posts plus bas
====================================
Pb initial :
Salut,
Petit challenge pour ce soir : cf. le topic dans CG à propos de www.vente-privee.com , je souhaitais faire un petit soft pour déterminer les chiffres qui vont bien
J'ai donc fait un bout de code en 2 minutes (enfin un poil plus  ) en me servant de la classe URL et en me disant que j'allais comparer une URL avec une URL de référence passée en paramètre...
Je dois donc récupérer le source de la page... Ceci marche très bien avec une page web classique mais dans le cas de VP, il demande une authentification !
J'ai donc provoqué un POST de mes identifiants mais le source retourné me fait croire que l'identification n'est pas bonne !
Le problème est apparemment qu'il faut avoir les bonnes clefs (qui ne s'appelent evidemment pas login et mdp  )
Voici le code partiel de mon soft, permettant d'accéder une URL protégée par identification...
Si qqun pouvait me dire ce qui va pas, merki
PS : Ce soft sera bien evidemment disponible s'il est terminé afin que tout le monde en profite
1. private static String doPost(URL urlA, String email, String pwd){
2. String ref = "";
3. OutputStreamWriter writer = null;
4. BufferedReader reader = null;
5. try {
6. //encodage des paramètres de la requête
7. String donnees = URLEncoder.encode("coKid", "UTF-8")+
8. "="+URLEncoder.encode(email, "UTF-8");
9. donnees += "&"+URLEncoder.encode("coKPwd", "UTF-8")+
10. "=" + URLEncoder.encode(pwd, "UTF-8");
11.
12. //création de la connection
13. URLConnection conn = urlA.openConnection();
14. conn.setDoOutput(true);
15.
16. //envoi de la requête
17. writer = new OutputStreamWriter(conn.getOutputStream());
18. writer.write(donnees);
19. writer.flush();
20.
21. //lecture de la réponse
22. reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
23.
24. String ligne;
25. while ((ligne = reader.readLine()) != null) {
26. ref = ref + ligne;
27. }
28. }catch (Exception e) {
29. e.printStackTrace();
30. }finally{
31. try{writer.close();}catch(Exception e){}
32. try{reader.close();}catch(Exception e){}
33. }
34. System.out.println(ref);
35.
36. return ref;
37. }
38.
Notez que coKid et coKPwd seraient d'après le source de la page d'acceuil (www.vente-privee.com ), les clefs de login et mdp...
|
|
| |
Message édité 3 fois, la dernière par gege38 le 25 janvier 2005 - 15 h 32. |
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
iraysyvalo
-
Messages : 9 647 Inscrit le 19/11/02
Ville : Lyon
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 26 m 44 s |
|
|
Je vois pas bien le bleme (dans le sens, j'ai mal compris l'enonce  ) ...
La page 'cible', c'est la page d'accueil ?
Mais si c'est que je pense, ca passe peut-etre par un mod_rewrite ??
Sinon, si tu peux simuler aussi des requetes 'venant d'un navigateur', il y a peut-etre un test quelque part ..
|
|
| |
Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 31 m 18 s |
|
|
Le 22 janvier 2005 - 19 h 26, iraysyvalo a écrit :
Je vois pas bien le bleme (dans le sens, j'ai mal compris l'enonce ) ...
|
Bon, je vais réexpliquer alors pour les cancres...  mais sans le contexte pour faire simple...
Je veux récuperer le source d'une page, mais néanmoins, cette page est protégée par mdp.
Dans mon cas, je "capture" l'URL de la page d'acceuil (j'ai fait attention au mod_rewrite), je poste les identifiants et ensuite, je veux acceder à la page résultante (dans mon cas, j'accede à l'acceuil des membres contenant la liste des ventes en cours)
Ben ca, ca marche pas
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
iraysyvalo
-
Messages : 9 647 Inscrit le 19/11/02
Ville : Lyon
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 34 m 59 s |
|
|
Tu dis que tu fais attention au mod_rewrite .. mais si tu captures reellement l'URL (donc avant l'action du mod), t'as plus de pb de clefs comme tu les appelles, non ?
|
|
| |
Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 40 m 15 s |
|
|
Le 22 janvier 2005 - 19 h 34, iraysyvalo a écrit :
Tu dis que tu fais attention au mod_rewrite .. mais si tu captures reellement l'URL (donc avant l'action du mod), t'as plus de pb de clefs comme tu les appelles, non ?
|
Le problème, c'est que c'est du ASP...
Je suis sûr de rien...
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
iraysyvalo
-
Messages : 9 647 Inscrit le 19/11/02
Ville : Lyon
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 43 m 46 s |
|
|
Ah .. ASP .. encore des specifs concoctees a part ..  ou est Sectos ?
Sur des sites normaux, PHP ou autres, ca retourne le source aussi ?
|
|
| |
Message édité 1 fois, la dernière par iraysyvalo le 22 janvier 2005 - 19 h 44. |
| |
Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.
|
DeVice
Boulet occasionel...
Messages : 3 022 Inscrit le 12/03/03
Ville : Grenoble
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 45 m 30 s |
|
|
Tu es sur que l'authentification se fait par les champs d'un <Form> ?
|
|
| |
Règle N°1 du forumeur : "Ta souris 7 fois autour du bouton poster tu tourneras, ainsi moins pour un âne de passer tu risqueras"
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 45 m 40 s |
|
|
|
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 46 m 59 s |
|
|
Le 22 janvier 2005 - 19 h 45, DeVice a écrit :
Tu es sur que l'authentification se fait par les champs d'un <Form> ?
|
Ca m'a l'air...
Mais bon, ma spécialité à moi, c'est pas la conception de sites Web... Et donc je peche sur le truc qui me faut...
Par contre, le reste, j'en fais mon affaire... Une fois le source obtenu, c'est fingers in ze nose..
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
iraysyvalo
-
Messages : 9 647 Inscrit le 19/11/02
Ville : Lyon
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 48 m 17 s |
|
|
Gege> J'ai evite de dire FH justement dans mon premier post mais bon
|
|
| |
Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.
|
iraysyvalo
-
Messages : 9 647 Inscrit le 19/11/02
Ville : Lyon
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 54 m 32 s |
|
|
Il y a 2 etapes pour ce que tu veux, en fait ?
1- recup du source qui gere l'affichage de ce que tu veux voir (mais normalement, ce source est mis en branle apres l'authentification dont on sait pas comment ils le passent en ASP)
2- automatisation de ce que fait le source en externe .. en mettant juste login/mdp legitimes ..
Juste une question de cancre  : c'est si chiant de passer par le site ?
|
|
| |
Pour un ban rapide et garanti sur ce forum, argumentez vos posts, dites simplement la verite, parlez de la realite et les leche-culs d'un cote et les maniaques du ban de l'autre se feront un plaisir de vous envoyer au purgatoire aussi sec.
|
DeVice
Boulet occasionel...
Messages : 3 022 Inscrit le 12/03/03
Ville : Grenoble
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 57 m 28 s |
|
|
Hey Gege, dans la page d'accueil, tu as remarqué ça ?
1. <input type="hidden" name="CTest" value="yes">
Pasque dans ton java j'y vois pas
|
|
| |
Règle N°1 du forumeur : "Ta souris 7 fois autour du bouton poster tu tourneras, ainsi moins pour un âne de passer tu risqueras"
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 19 h 59 m 11 s |
|
|
Le 22 janvier 2005 - 19 h 57, DeVice a écrit :
Hey Gege, dans la page d'accueil, tu as remarqué ça ?
1. <input type="hidden" name="CTest" value="yes">
Pasque dans ton java j'y vois pas 
|
Vi vi, j'ai testé la clé CTest à la place de cokId...
Mais idem...
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 20 h 04 m 38 s |
|
|
Bon, Boulet, j'avais la solution sous les yeux...
Merci Device, j'avais zappé de rajouter la clé CTest...
Donc en fait, il fallait rajouter :
1. //
2. donnees += "&"+URLEncoder.encode("CTest", "UTF-8")+
3. "=" + URLEncoder.encode("yes", "UTF-8");
Maintenant, autre challenge, je n'ai pas la bonne page, car on m'annonce que mon navigateur ne supporte pas les cookies...
Une idée pour permettre de les stocker en java ?
|
|
| |
Message édité 1 fois, la dernière par gege38 le 22 janvier 2005 - 20 h 05. |
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
DeVice
Boulet occasionel...
Messages : 3 022 Inscrit le 12/03/03
Ville : Grenoble
Non connecté
|
|
Posté le 22 janvier 2005 - 20 h 11 m 29 s |
|
|
C'est un peu plus compliqué que juste gerer des champs de <FORM>.
Soit tu descends un niveau plus bas dans ta gestion des echanges avec le serveur (les cookies sont au niveau http, pas html), soit tu dégottes une classe (ou un package, je cause pas très bien je Geawa moua  ) toute faite qui gère ça.
|
|
| |
Règle N°1 du forumeur : "Ta souris 7 fois autour du bouton poster tu tourneras, ainsi moins pour un âne de passer tu risqueras"
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 20 h 20 m 42 s |
|
|
Le 22 janvier 2005 - 20 h 11, DeVice a écrit :
C'est un peu plus compliqué que juste gerer des champs de <FORM>.
Soit tu descends un niveau plus bas dans ta gestion des echanges avec le serveur (les cookies sont au niveau http, pas html), soit tu dégottes une classe (ou un package, je cause pas très bien je Geawa moua ) toute faite qui gère ça.
|
Descendre au niveau HTTP, c'est pas un problème avec Java... Le tout est de trouver la bonne API existante qui va bien...
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 21 h 04 m 37 s |
|
|
Bon, les amis, on progresse...
J'ai réussi à obtenir le cookie grâce à la méthode getHeaderField de HttpURLConnection (et au parametre Set-Cookie)
Maintenant, va falloir le rebalancer...
C'est parti !
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
DeVice
Boulet occasionel...
Messages : 3 022 Inscrit le 12/03/03
Ville : Grenoble
Non connecté
|
|
Posté le 22 janvier 2005 - 21 h 34 m 44 s |
|
|
Ca fait plaisir à voir une patate qui roule
|
|
| |
Règle N°1 du forumeur : "Ta souris 7 fois autour du bouton poster tu tourneras, ainsi moins pour un âne de passer tu risqueras"
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 22 janvier 2005 - 22 h 51 m 46 s |
|
|
Ayéééééééééééééééééééééééééééééééé ca marcheeeeeeeeeeee !
Il est relativement facile en fait de pouvoir se servir ensuite du cookie...
Il suffit alors d'ouvrir une nouvelle connexion, et avant toute recuperation (création du stream), de faire un appel au cookie par la méthode :
connexion.setRequestProperty("Cookie", <cookie>);
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 25 janvier 2005 - 15 h 31 m 41 s |
|
|
Programme fini mais non opérationnel (admirez la nuance  )
Bugs à recenser ici
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|