ciao a tutti,scusate l'insistenza ma nn riesco a capire se sono io che non ci arrivo..o boh!
prima di provare httpurlconnction ho deciso di provare senza..e nn capisco perche nn funzioni!
questoè il metodo start del mio thread e sarebbe il lato server del proxy che per adesso non deve fare nulla,dev essere un proxy fantasma,riceve la richesta dal browser e la passa alla classe Cproxy:
codice:
public void start(){
try{
byte[] buffer = new byte[2048];
OutputStream os = s.getOutputStream();
InputStream is = s.getInputStream();
int r;
while ((r = is.read(buffer)) !=-1) {
String richiestaclient= new String(buffer, 0, r);
StringTokenizer tok = new StringTokenizer(richiestaclient);
tok.nextToken("//");
String host1= tok.nextToken();
System.out.println("\nrichiesta del client:\n" + host1+"\n");
System.out.print(richiestaclient);
CProxy prova= new CProxy(richiestaclient,host1);
prova.start();
System.out.println("\nrisposta del server:\n" +prova.risposta()+"\n");
os.write(prova.risposta());
}
s.close();
}catch(Exception e){
System.err.println("Client error");
e.printStackTrace();
}
}
la classe Cproxy reinvia la richiesta del browser al server e poi passa la risposta al metodo start del thread che la reinvia al browser :
codice:
public void start(){
try {
Socket s = new Socket();
InetAddress add= InetAddress.getByName(indirizzo);
SocketAddress endpoint= new InetSocketAddress(add,80);
s.connect(endpoint);
InputStream is = s.getInputStream();
OutputStream os = s.getOutputStream();
os.write(request.getBytes());
int r;
while ((r = is.read(buffer)) != -1) { rispserver +=new String(buffer, 0, r);
appoggio=buffer;
}
s.close();
}catch (Exception e) {
e.printStackTrace();
}
}
public byte[] risposta(){
return appoggio;
}
non vi ho copiato costruttori e dichiarazione variabili...
sia buffer che appoggio sono di tipo byte[]!
non capisco...nel primo pezzo di codice alla fine facendo prova.risposta() dovrei avere come ritorno una varaibile di tipo byte[] contentente la risposta del vero server da girare al browser!
perche nn funziona??
vi prometto che è l'ultima domanda,poi non rompo piu...