Write your own http client to test your server, Computer Networking

Assignment Help:

- The project should include a web server, and an example webpage
- Webserver should continue to accept multiple requests from client browser
- Webserver should print out logs: how many connections have been established and what is request method (GET or POST).
- The example webpage you include within the webserver should include a welcome page and a small picture.

Exemplary Steps:

1. Make web server program with Python code and compile it (you should learn by yourselves): in this step, you should specify you would like to accept requests from clients.
2. Prepare a simple web page you want to show to the user when the client browserconnects to the server. Put the example web page in the same dictionary of your server program.
3. Using web browser in the same computer, connect to https://localhost:
4. Connect multiple times and check whether your program spawns threads properly.

Report (not more than two pages)
- Briefly introduce how the multi-thread works. DO NOT INCLUDE SOURCE CODE IN YOUR REPORT
- Include output from web server (logs) and one screen shot of web browser when it is connected.

Bonus
Instead of using a browser, write your own HTTP client to test your server. Your client will connect to the server using a TCP connection, send an HTTP request to the server, and display the server response as an output. You can assume that the HTTP request sent is a GET method.

The client should take command line arguments specifying the server IP address or host name, the port at which the server is listening, and the path at which the requested object is stored at the server. The following is an input command format to run the client.

client.py server_hostserver_port filename


Related Discussions:- Write your own http client to test your server

Http request message, HTTP Request Message The first  line of  an HTTP...

HTTP Request Message The first  line of  an HTTP request message  is called the  line. The subsequent lines are called  the header lines. The  request  line has  fields the me

What are the basic lan topologies, What are the basic LAN topologies? ...

What are the basic LAN topologies? The three simple LAN topologies that are combined to shape any practical topology are called as basic LAN topologies. They are, Bus Topology

Collective message passing, In collective message passing, all the processe...

In collective message passing, all the processes of a set participate in communication. MPI gives a number of functions to execute the collective message passing. Some of them are

Difference between authentication and deauthentication, Difference between ...

Difference between Authentication and Deauthentication Authentication: Used to establish the self of stations to each other. Deauthentication: This service is appealed whene

What is ipv6, What is IPv6? IPv6, or Internet Protocol version 6, was d...

What is IPv6? IPv6, or Internet Protocol version 6, was developed to change IPv4. At present, IPv4 is being used to control internet traffic, butis expected to get saturated in

What are the major technologies to create client application, What are the ...

What are the five major technologies that can be used to create Client/Server applications? Database Servers Groupware TP Monitors Distributed Objects Intranets.

Define name space in domain name system, Q. Define Name Space in domain nam...

Q. Define Name Space in domain name system? - All names assigned to machines on an internet - Must be unique; either flat or hierarchical - Flat name space - name is assi

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd