Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [JAVA] Ho dei seri problemi con i socket

    Sto scrivendo un proxy HTTP. O meglio, sto facendo degli esercizi propedeutici a scrivere un proxy HTTP. Adesso vorrei fare quando segue:
    Ponendo che il proxy più semplice è quello che non fa nulla, ovvero ha un socket aperto co, browser, e uno col server web di destinazione, prende quello che arriva tal browser e lo mette su quello che va al web server, poi prende ciò che risponde il server web e lo spara nel socket verso il browser. Semplice? NO!

    Questo è il pezzo di codice incriminato. Dove sbaglio?

    codice:
    InputStreamReader isr=new InputStreamReader(client.getInputStream());
    			BufferedReader is=new BufferedReader(isr);
    			PrintWriter os=new PrintWriter(new BufferedOutputStream(client.getOutputStream()),false);
    
    			
    			//Apro un socket sulla porta 80 verso il server web e preparo gli stream di input ed output
    			Socket s = new Socket ("ilmax.ilbello.com", 80);
    			System.out.println("Connessione avvenuta.");
    			BufferedOutputStream buffOut=new BufferedOutputStream (s.getOutputStream ());
    			//DataOutputStream out=new DataOutputStream (buffOut);
    			PrintWriter out=new PrintWriter(buffOut);
    			DataInputStream in=new DataInputStream (s.getInputStream());
    			
    			//Mando al webserver la richiesta del client
    			is=new BufferedReader(isr);
    			String output=is.readLine();
    			while(output!=null){
    				out.write(output+"\r\n");
    				output=is.readLine();
    			}
    			out.flush();
    			System.out.println("Mandata al webserver la richiesta del client");
    			
    			//Rimando al client la risposta del server
    			String input=in.readLine();
    			while(input!=null){
    				os.write(input+"\r\n");
    				input=in.readLine();
    			}
    			os.flush();
    Per semplicità ho messo nell'apertura dl socket verso il webserver direttamente l'indirizzo da raggiungere. Il browser è impostato per avere il proxy.
    Quando mi connetto all'indirizzo rimane lì ad aspettare qualcosa che non arriva
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

  2. #2
    uppete
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

  3. #3
    Utente di HTML.it L'avatar di albgen
    Registrato dal
    Jun 2005
    Messaggi
    3,249
    ma scusa, li devi dare il comando GET del HTML altrimenti la connessione rimane semplicemnte in attesa, per questo non vedi niente.
    almeno credo che sia questo alle 2.30
    hai provato con lo sniffer ?
    I got the remedy

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.