Tuesday 30 March 2021

Create a socket for HTTP for web page upload and download

Create a socket for HTTP for web page upload and download.

Aim:

To write a java program for socket for HTTP for web page upload and download .

Algorithm


1.Start the program.

2.Get the frame size from the user

3.To create the frame based on the user request.

4.To send frames to server from the client side.

5.If your frames reach the server it will send ACK signal to client otherwise it will send NACK signal to client.

6.Stop the program


Program :


Client


import javax.swing.*;

import java.net.*;

import java.awt.image.*;

import javax.imageio.*;

import java.io.*;


import java.awt.image.BufferedImage; import java.io.ByteArrayOutputStream; import java.io.File;


import java.io.IOException; import javax.imageio.ImageIO;


public class Client{


public static void main(String args[]) throws Exception{ Socket soc;


BufferedImage img = null;

soc=new Socket("localhost",4000);


System.out.println("Client is running. ");

 try {


System.out.println("Reading image from disk. ");


img = ImageIO.read(new File("digital_image_processing.jpg")); ByteArrayOutputStream baos = new ByteArrayOutputStream();

         ImageIO.write(img, "jpg", baos);

baos.flush();


byte[]  bytes = baos.toByteArray(); baos.close();




System.out.println("Sending image to server. ");

OutputStream out = soc.getOutputStream();

DataOutputStream dos = new DataOutputStream(out);

dos.writeInt(bytes.length);


dos.write(bytes, 0, bytes.length);

System.out.println("Image sent to server. ");

         dos.close();

out.close();


}catch (Exception e) { System.out.println("Exception: " + e.getMessage());

soc.close();

}


soc.close();

}

}


Server


import java.net.*;

import java.io.*;


import java.awt.image.*;

 import javax.imageio.*;

import javax.swing.*;


class Server {


public static void main(String args[]) throws Exception{

  ServerSocket server=null;


Socket socket;


server=new ServerSocket(4000);

System.out.println("Server Waiting for image");

     socket=server.accept(); System.out.println("Client connected.");

    InputStream in =    socket.getInputStream();

   DataInputStream dis = new DataInputStream(in);

     int len = dis.readInt();


System.out.println("Image Size: " + len/1024 + "KB"); byte[] data = new byte[len];


dis.readFully(data);

dis.close();

in.close();

InputStream ian = new ByteArrayInputStream(data);

BufferedImage bImage = ImageIO.read(ian);

JFrame f = new JFrame("Server");

ImageIcon icon = new ImageIcon(bImage);

JLabel l = new JLabel();

l.setIcon(icon);

f.add(l);


f.pack();

f.setVisible(true);

}

}



Output


When you run the client code, following output screen would appear on client side.

Also Read XSS Attack

No comments:

Post a Comment

The Future of Web Development: Why Next.js is Going Viral

  Are you ready to level up your web development game? Look no further than Next.js, the latest sensation in the world of web development th...