Crear Clientes Y Servidores Tcp
Enviado por argenius2350 • 6 de Febrero de 2014 • 663 Palabras (3 Páginas) • 412 Visitas
APÉNDICE E)
Crear clientes y servidores TCP.-
De repente, aparece el Director General y dice: "Necesitamos un modo secreto de comunicarnos por Internet con nuestros espías informáticos".
"Pero... ¿Tenemos espías?" preguntas.
Y el gran jefe dice: "Configure un programa cliente/servidor que permita comunicarse a través de Internet y asegúrese de que todo está codificado".
"¡Vaya!...".
Utilizando los objetos BufferedReader y PrintWriter, puede comunicarse en Internet con sockets; todo lo que necesita es una dirección DNS del servidor y un puerto libre en dicho servidor (las direcciones DNS son grupos de cuatro números, separados por puntos, que especifican direcciones de Internet).
Compruebe un ejemplo. En este caso, se configuró un programa cliente que se conecta a un programa servidor, envía un mensaje, y obtiene un mensaje de respuesta. En este caso, utilizaremos el DNS 127.0.0.1 (host local), lo que significa que tanto el cliente como el servidor estarán en la misma máquina. Sin embargo, puede utilizar cualquier DNS que desee mientras sitúe el script del servidor en la máquina correspondiente. Usaremos un puerto arbitrario (el número 8765). Cuando esté escogiendo un número de puerto, recuerde que ese puerto no puede estar en uso y que tanto el cliente como el servidor se conectarán al mismo puerto. Esta es la aplicación cliente, que envía el mensaje "¡Hola!" al servidor y lee lo que le devuelve éste:
import java.net.*;
import java.io.*;
class client
{
public static void main(String args[]) throws Exception
{
int character;
Socket socket = new Socket("127.0.0.1", 8765);
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
String string = "¡Hola!\n";
byte buffer[ ] = string.getBytes();
out.write (buffer);
while ((character = in.read()) != -1) {
System.out.print ((char) character);
}
socket.close( );
}
}
Y ésta es la aplicación del servidor, que lee el mensaje del cliente y contesta al mismo, después del mensaje "Respuesta del servidor":
import java.io.*;
import java.net.*;
public class server
{
public static void main(String[] args )
{
try {
ServerSocket socket = new ServerSocket (8765);
Socket insocket = socket.accept ( ) ;
BufferedReader in = new BufferedReader (new
...