Obtaining Information About An URL Through Socket Programming

Obtaining Information About An URL Through Socket Programming

Program:

Server Side

import java.net.*;
import java.util.*;
import java.io.*;


public class Server
{
 public static void main(String arr[]) throws Exception
 {
 ServerSocket ss=new ServerSocket(12345);
 Socket s=ss.accept();

 DataInputStream din=new DataInputStream(s.getInputStream());
 DataOutputStream dout=new DataOutputStream(s.getOutputStream());

 System.out.println("\nServer started.. Waiting for URL...");
 String str=din.readUTF(); 
 URL u=new URL(str);

 System.out.println("Protocol : "+u.getProtocol());
 System.out.println("Host     : "+u.getHost()); 
 System.out.println("Port     : "+u.getPort());
 System.out.println("Path     : "+u.getPath());
 System.out.println("Authority: "+u.getAuthority());
 System.out.println("Reference: "+u.getRef());
 System.out.println("Query    : "+u.getQuery());
 System.out.println("File     : "+u.getFile());


 dout.writeUTF("Finish..");
 dout.flush();

 din.close();
 dout.close();
 s.close();
 ss.close();
 }

}





Client side

import java.net.*;
import java.util.*;
import java.io.*;

public class Client
{
 public static void main(String args[]) throws Exception
 {
 Scanner sc=new Scanner(System.in);
 System.out.print("Enter the URL: ");
 String str=sc.nextLine();
 
 Socket s=new Socket("localhost",12345);
 DataOutputStream dout=new DataOutputStream(s.getOutputStream());
 DataInputStream din=new DataInputStream(s.getInputStream());

 dout.writeUTF(str);
 dout.flush();
 

 str=din.readUTF();
 System.out.println("\n"+str+"\n");

 din.close();
 dout.close();
 s.close(); 
 }
} 


Share:

0 comments