begin process at 2012 02 12 01:37:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Réseau & internet

 > 

Internet

 > 

problème de Proxy HTTP


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème de Proxy HTTP

jeudi 17 avril 2008 à 13:29:19 | problème de Proxy HTTP

nanano7

Bonjour tous le monde

j'ai troué un petit programme de proxy http en java, mais ne retourne pas la résultat, il retourne juste la reponse de l'en-tête http, voici le programme :

--------------------------------------
import java.io.*;
import java.net.*;

class OneServeur extends Thread{
  private Socket socket, socketToWeb;
  private BufferedReader fromBrowser;
  private PrintWriter toBrowser;
  private PrintWriter toWeb;
  private BufferedReader fromWeb;

  public OneServeur(Socket s) throws IOException {
        socket = s;
        fromBrowser = new BufferedReader(
                            new InputStreamReader (
                              socket.getInputStream()));
        toBrowser = new PrintWriter( new BufferedWriter (
                                      new OutputStreamWriter (
                                      socket.getOutputStream())),true);
        start();
  }

  public void run() {
    try {
        String str, targetHost="", httpHeader="";
        while(true) {
             str = fromBrowser.readLine();
             httpHeader += str + "\n";
             if ( str.startsWith("Host: " ) ) targetHost = str.substring(6);
             if ( str.length() == 0 ) break;
        }
        //socketToWeb = new Socket(InetAddress.getByName(targetHost),80);
        socketToWeb = new Socket(
                            InetAddress.getByName(targetHost),80);
        System.out.println(socketToWeb);
        fromWeb = new BufferedReader(
                      new InputStreamReader (
                          socketToWeb.getInputStream()));
        toWeb = new PrintWriter( new BufferedWriter (
                                  new OutputStreamWriter (
                                    socketToWeb.getOutputStream())),true);
        System.out.println("-> -> -> -> -> -> ->  \n" + httpHeader);
        toWeb.println(httpHeader);


        boolean echoing = true;

        while ( true ) {
             str = fromWeb.readLine();
             if ( str == null ) break;
             if ( str.length() == 0 ) echoing = false;
             if( echoing ) System.out.println(str);
             toBrowser.write(str);
        }
        System.out.println("\nclosing ...");
    } catch ( IOException e) {
    } finally {
        try {
                socket.close();
        } catch ( IOException e ) {}
    }
  }
}
------------------------------------------------
voici le resultat qui m'a donner :

Started ServerSocket[addr=0.0.0.0/0.0.0.0,port=0,localport=12345]
connection acceptee Socket[addr=/192.168.0.7,port=1523,localport=12345]
Socket[addr=www.google.fr/66.249.93.147,port=80,localport=35059]
-> -> -> -> -> -> -> 
GET / HTTP/1.1
Host: www.google.fr
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cookie: GPC=FW=0:GHV=2:MGLS=0:MGV=0:SG=0:TE=0:TS=0:TV=0:WCYD=0:SIG=knL9H0E5R8onR5e1; PREF=ID=60b983ba303f9e1e:TB=4:LD=fr:NR=100:TM=1203686163:LM=1207734861:S=4R40Q4i3iomrmRJD; GDSESS=ID=60b983ba303f9e1e:EX=1207825110:S=H0eaQ8x-pzEdekJe; S=sorry=-td9FggEbhej8Ic1Ga3Icg; BX=38hlknh40ce55&b=3&s=lb


HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Content-Encoding: gzip
Server: gws
Content-Length: 2740
Date: Thu, 17 Apr 2008 11:19:35 GMT

closing ...

si qlq voir où le problème, qu'il m'aide, et merci

jeudi 17 avril 2008 à 14:43:49 | Re : problème de Proxy HTTP

Kysic

Membre Club
Salut,
il n'affiche que l'entête mais il est sensé envoyé au navigateur tout le contenu.
c'est :
if ( str.length() == 0 ) echoing = false;
if( echoing ) System.out.println(str);
qui détecte la fin de l'entête et n'affiche plus après.
Cela dit si tu affiche le reste quand tu te connecte à google ça risque de pas être très lisible puisque comme tu indique accepter que se soit compresser ("Accept-Encoding: gzip,deflate") google va t'envoyer du compresser ("Content-Encoding: gzip").


Cette discussion est classée dans : http, socket, str, fr, sockettoweb


Répondre à ce message

Sujets en rapport avec ce message

enchainer des requetes http dans un client java [ par squezzyb ] Bonjour a tous. J'essaye de developper un client java pour envoyerdes requetes HTTP à un serveur JBOSS. Ce qui coince, c'est qu'à partir de la seconde problème d'expression regulière [ par ismailfk ] Bonjour,j'ai toujours des problèmes avec les expressions regulières.Bref,j'ai le code suivant:Pattern p= Pattern.compile(regex);Matcher m = p.matcher( serveur Socket [ par fx9200 ] Bonjour j'essaie de faire fonctionner un socket en tant que serveurla compilation s'chève avec succésun message lors de l'exécution s'affiche:-------- proxy http SSL [ par spurnelle ] Bonjour, J'ai adapté un client FTP pour qu'il utilise à un proxy authentifiant. Fin du mois, la société gérant le proxy va le modifier afin qu'il sup help help help socket udp [ par staricee ] bonjour tout le monde :D bn voila mon problem , je dois réaliser une application en JAVA sur mon réseau local sur 2 machines , qui ne contiennent auc socket+Dijkstra en java [ par rababfatma ] bonjour on a un mini projet qui consiste a envoyer lsbd final à tous les noeuds du graphe chaque noeud devra calculer les chemin les plus cours vers t Java Socket >> Client déconnecté [ par lordatef ] bonjour, j'ai programmer une application client serveur ou le serveur est multithread ( il accepte plusieurs connexion clients entrantes) alors je veu erreur dans une page jsp [ par nassim1987 ] Bonjour,je develope avec J2EE,j'ai ecrit une JSP qui declare un formulaire la validation de ce formulaire m'envoie vers à une autre page (jsp) ou j'ai traitement d'un fichier texte avec java pour l'extraction de données [ par sabrinafr ] salut! j'ai un fichier texte avec des lignes de cette forme : 0,tcp,http,SF,181,5450,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00 JMF utilisation de RTPsocket [ par nicotine76120 ] Bonjour a tous, Je suis actuellement en train de réaliser une application java basé sur JMF pour faire de la transmission de voix audio via RTP. Pour


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,856 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales