Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1267 connectés 

  FORUM HardWare.fr
  Programmation

  [java] accès internet via un proxy dans une application java

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[java] accès internet via un proxy dans une application java

n°60761
benou
Posté le 20-09-2001 à 18:19:45  profilanswer
 

voilà mon problème :  
 
J'ai une application qui doit pouvoir lire des pages web. Il y a une classe bien pratique pour ca en Java : la classe URL. Pour certaines raisons, je ne l'utilise pas : j'ouvre une socket vers le site, je lance ma requete HTTP et je reçois la réponse.
 
avec un accès direct à internet ca marche impec. Maintenant, je dois pouvoir faire fonctionner mon appli via un proxy.
 
Avec les recherche que j'ai fait, j'ai vu qu'on pouvait faire ca facilement en ajoutant ces lignes :
 
System.getProperties().put( "proxySet", "true" );
System.getProperties().put( "proxyHost", "ip_du_proxy" );
System.getProperties().put( "proxyPort", "80" );
 
ca marche très bien avec la classe URL, mais quand je passe par des socket ca ne marche plus du tout !!
c'est comme si les sockets n'utilisait pas ces propriétés.
 
Y a t'il d'autre réglage à faire ou comment communiquer aux socket ces propriétés ???  
merci de me venir en aide parce que là, je sèche !
 
 
 
voici mes fichiers de test : Test marche, mais Test2 marche pas !
 
-------------------------------------------------------------
import java.net.*;
import java.io.*;
 
public class Test {
    public static void main(String[] args) throws Exception {
     System.getProperties().put( "proxySet", "true" );
     System.getProperties().put( "proxyHost", "ip_du_proxy" );
     System.getProperties().put( "proxyPort", "80" );
     
     URL url = new URL("http://www.yahoo.com" );
 
     BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream() ));  
     String tmp;
     while ((tmp = reader.readLine()) != null)
  System.out.println(tmp);
    }
}
 
 
--------------------------------------------------------------
 
 
import java.net.*;
import java.io.*;
 
public class Test2 {
    public static void main(String[] args) throws Exception {
     System.getProperties().put( "proxySet", "true" );
     System.getProperties().put( "proxyHost", "ip_du_proxy" );
     System.getProperties().put( "proxyPort", "80" );
     
     String host = "www.yahoo.com";
     int port = 80;
     Socket socket =  new Socket(host,port);
 
     PrintWriter out;
     BufferedReader in;
     out = new PrintWriter(socket.getOutputStream());
     in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
 
     out.println("GET / HTTP/1.0" );
     out.println("User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)" );
     out.println("Host: " + host + ":" + port);
     out.println("Content-Length: 0" );
     out.println("Connection: close" );
     out.println("" );
     out.flush();
 
     String line;
     while ((line = in.readLine()) != null)
  System.out.println(line);
 
     in.close();  
     out.close();
     socket.close();
    }
}
 
---------------------------------------------
 
remarque : j'ai vérifié la requete HTTP, elle est bonne (j'arrive à accéder à des web locaux juste en changeant la variable host)

mood
Publicité
Posté le 20-09-2001 à 18:19:45  profilanswer
 

n°60810
louisebroo​ks
Posté le 21-09-2001 à 08:56:45  profilanswer
 

je crois qu'il faut aussi que le proxy accèpt les sockets !

n°60819
benou
Posté le 21-09-2001 à 09:13:28  profilanswer
 

je pense que ca ne vient pas du proxy puisque la classe URL arrive bien à y accéder, elle. Et elle utilise forcement des sockets aussi ...
J'ai essayé d'aller voir comment fonctionne la classe URL dans le code de la SDK, mais y a des classes sun.net.... qui sont utilsées et j'ai pas leur source :(
 
personne d'autres n'a une idée ???
 
je me suis dis que peut être qu'il faut ouvrir une socket directement vers le proxy et lui envoyer une requête à lui, mais je ne connais pas du tout le protocole d'un proxy HTTP.  
Quelqu'un connait ca ???


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [java] accès internet via un proxy dans une application java

 

Sujets relatifs
[PHP]Accès a une base AccessAccès données de VB à Oracle ??
[JAVA] File...[ASP-W2000] pb de permission et d'acces simultané a la BdD!
acces disque trop fréquants please help !PRobleme de LDAP avec servlet JAVA / Apache / Tomcat
[JAVA] Composants graphiques en overlay sur une video ??propriete disabled en html4 acces par javascript
[Java]RuntimeAccès Variable d'Environnement en JAVA
Plus de sujets relatifs à : [java] accès internet via un proxy dans une application java


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR