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 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| public static void main(String[] args) throws IOException {
// TODO code application logic here
int localport = 1111;
int remoteport = 80;
String message;
boolean test;
ServerSocket ecoute = new ServerSocket(localport);
String host="";
Vector tabLignes=new Vector();
System.out.println("Création des variables");
while(true){
Socket client=null,serveur=null;
try {
//dans une boucle
client = ecoute.accept();
System.out.println("création socket client :" + client);
System.out.println("crétion serversocket ecoute :" + ecoute);
// final InputStream streamFromClient = client.getInputStream();
// final OutputStream streamToClient = client.getOutputStream();
PrintWriter sortie = new PrintWriter(new OutputStreamWriter(client.getOutputStream()));
BufferedReader entree = new BufferedReader (new InputStreamReader(client.getInputStream()));
//PrintWriter sortie = new PrintWriter(service.getOutputStream());
System.out.println("création printwiter sortie :" + sortie);
System.out.println("création bufferedreader :" + entree);
test=true;
while (test){
message=entree.readLine();
if (message.equals("")) test=false;
else { tabLignes.add(message);}
}
int taille=tabLignes.size();
for (int i=0;i<taille;++i){
message=(String)tabLignes.elementAt(1);
host=(String)tabLignes.elementAt(1);
}
host=host.substring(host.indexOf(" ")+1,host.length());
System.out.println("création du host :" + host);
//InetAddress getHost = InetAddress.getByName(host);
// System.out.println(getHost);
try {
serveur = new Socket(host,remoteport);
System.out.println("socket serv :" + serveur);
PrintWriter sortieWeb = new PrintWriter(new OutputStreamWriter(serveur.getOutputStream()));
System.out.println("32");
BufferedReader entreeWeb = new BufferedReader (new InputStreamReader(serveur.getInputStream()));
sortieWeb.write(entreeWeb.toString());
}
catch(Exception e){
System.err.println("erreur :" + e);
}
//sortieWeb.println(entreeWeb.toString())
System.out.println("sortie de la boucle");
//todo : renvoyer une page au navigateur
sortie.println("HTTP/1.1 200 OK");
sortie.println("");
for (int i=0; i<taille;i++){
message=(String)tabLignes.elementAt(i);
sortie.println(message);
}
System.out.println("4");
sortie.close();
entree.close();
//serveur.close();
}
catch(Exception e){
System.err.println("erreur :" + e);
}
}
} |
Partager