Foro de elhacker.net

Programación => Java => Mensaje iniciado por: egyware en 14 Agosto 2007, 21:23 pm



Título: duda con serversocket explicacion de que realmente hice???
Publicado por: egyware en 14 Agosto 2007, 21:23 pm
hola a todos hace un tiempo hice un servidor web(esta incompleto pero tiene una buena funcionalidad) tuve reinventado la rueda un poquito pero tengo una duda con lo que realmente hice aqui va

abri el puerto 80 usando esta sentencia:
Código
  1. new ServerSocket(80); //me omito todo el demas codigo
  2.  
luego hice algunos manejadores para las conexiones entrantes enviando una pagina de prueba y nada paso pero luego hice esto
Código
  1. new ServerSocket(80,5,InetAddress.getLocalHost());/*creo que esta bien escrito la clase pero lo que hice tome la ip local del pc*/
  2.  
y hay funciono escribi en mi browser localhost y ahi funciono
ahi esta mi duda que hice realmente porque con uno funciono y no con otro ??
revise el fuente y me sale esto

Código
  1. public ServerSocket(int port, int backlog,InetAddres binadr){
  2. //...
  3. ]
  4. public ServerSocket(int port){
  5. //...
  6. }
  7.  

que es backlog :huh: :huh:
espero que alguien sepa y me ayude
gracias de antemano

PS:y si ademas me puede pasar el protocolo http para poder terminar mi server es que un programa ftp usando http (???) me pide GET http://egyware y no se que devolverle y el browser me pide GET / en ese caso le devuelvo la pag /index.htm


Título: Re: duda con serversocket explicacion de que realmente hice???
Publicado por: Yshua en 17 Agosto 2007, 05:36 am
mira lo que pasa es q el segundo constructor, no sólo crea un objeto de ServerSocket si no q además lo pone a escuchar, por el contrario el primer constructor de ServerSocket solo crea un objeto y para que escuche sera algo asi
Código
  1. new ServerSocket(80).accept();
o mas optimamente
Código
  1. ServerSocket servidor=new ServerSocket(80);
  2. servidor.accept();
  3. System.out.println("Conexion recibida de "+servidor.getRemoteAddress());

lo de http no lo tengo pero creo q en wikipedia está.


Título: Re: duda con serversocket explicacion de que realmente hice???
Publicado por: egyware en 17 Agosto 2007, 19:27 pm
bueno si le puse eso pero el mozila firebird no leyo mi pagina web de prueba cuando le puse localhost y cuando use el segundo contructor funciono es esa mi duda que onda (osea que paso?? :huh:)
Código
  1. new ServerSocket(80).accept();
y naaninaa pero en otro pc (win vista) me sucedio algo extraño puse algo asi
Código
  1. new ServerSocket(1000).accept();
  2. //otro programa
  3. new Socket("localhost",1000);
  4. //y me conecto
  5.  
pero.... habia un metodo que ya ni me acuerdo y me devolvio esto
0.0.0.0/0.0.0.0

 :¬¬ creo que mi problema es con el protocolo y no con java pero igual tengo la duda en java

y si revise wikipedia sobre http pero no sale lo que busco pero me sirve para mejorar algo