IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Requete HTTP Post et Cookies


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Par défaut Requete HTTP Post et Cookies
    Bonjour à tous,

    Je tente de concevoir un genre de "bot" http en java.
    Le but de mon bot sera de se logguer sur un site puis d'aller voir le contenu d'une page.

    J'ai reussi à coder la procedure de log mais je ne sais pas comment ouvrir une autre page du site en restant loggué.

    Voila mon code pour me logguer:

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.net.URL;
    import java.net.URLConnection;
    import java.net.URLEncoder;
     
     
    public class TestPost
    {
    	public static String post(String myurl, String name1, String value1, String name2, String value2)
    	{
    		String retour = "";
    		try {
    			// Construct data
    			String data = URLEncoder.encode(name1, "UTF-8") + "=" + URLEncoder.encode(value1, "UTF-8");
    			data += "&" + URLEncoder.encode(name2, "UTF-8") + "=" + URLEncoder.encode(value2, "UTF-8");
     
    			// Envoi des données
    			URL url = new URL(myurl);
    			URLConnection conn = url.openConnection();
    			conn.setDoOutput(true);
    			OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
    			wr.write(data);
    			wr.flush();
     
    			//Récupération de la réponse
    			BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
    			String line;
    			while ((line = rd.readLine()) != null)
    			{
    				retour = retour + line + "\n";
    			}
    			wr.close();
    			rd.close();
    		} catch (Exception e) {
    		}
    		return retour;
    	}
     
    	public static void main(String[] args)
    	{
    		System.out.println(post("http://www.lesite.com/login.php","pseudo","mon_pseudo","password","mon_pass"));
    	}
     
    }
    J'obtiens bien la page qui me confirme être authentifié !
    Maintenant je veux aller sur la page http://www.lesite.com/info.php en restant connecté .

    Quelles méthodes utilisés ?

    Merci d'avance pour votre aide !

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Par défaut
    En fait j'ai un problème avec ma procédure d'authentification, quand j'ai voulu la tester sur une page ayant besoin de cookies j'ai eu ce message:

    "Votre navigateur doit accepter les cookies...."

    J'ai essayer d'utiliser cette classe mais j'ai des problème avec mes connexion et quand j'arrive à corriger ces erreurs le site me dit de nouveau que j'ai besoin des cookies ....

    Merci d'avance

  3. #3
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    J'ai réalisé plusieurs bots, avec succès, grâce au HTTPClient de Jakarta.
    C'était pour des browser game.
    Le HTTPClient permet de gérer les cookies, login/mdp... La doc est bien faite.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Par défaut
    C'est dans le même but
    Je vais me renseigner sur le HTTPClient de Jakarta !
    Peux-tu me montrer ce que tu as fait ? Au moins les procédures de connexion de base ?
    Merci de ton aide !

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 18
    Par défaut
    Après avoir survolé la doc, j'ai voulu me lancer dans le tutorial mais j'ai une erreur que je n'arrive pas à régler:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
    	at org.apache.commons.httpclient.HttpClient.<clinit>(HttpClient.java:66)
    	at HttpClientTutorial.main(HttpClientTutorial.java:18)
    J'ai pourtant inclus les deux librairies suivantes:
    -commons-httpclient-3.1.jar
    -log4j-1.2.15.jar

    Encore merci d'avance

  6. #6
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    C'est bien de survoler, mais il faut parfois savoir atterrir
    liste des dépendances
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

Discussions similaires

  1. probleme Requete HTTP (post)
    Par Pyroclem dans le forum Débuter
    Réponses: 1
    Dernier message: 18/03/2009, 23h52
  2. Requete HTTP POST MIME - Upload de fichier
    Par Olphébus dans le forum Réseau
    Réponses: 9
    Dernier message: 24/01/2009, 10h49
  3. Réponses: 1
    Dernier message: 17/12/2008, 15h15
  4. Réponses: 2
    Dernier message: 04/11/2008, 15h04
  5. [curl] requete http post ( simuler envoi de formulaire )
    Par mikebranque dans le forum Bibliothèques
    Réponses: 0
    Dernier message: 07/07/2008, 21h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo