HTTP Java Clients and Servers
As part of the KTH Networks and Communication course (IK1203), I produced a series of HTTP clients and servers in Java. These utilised TCP to deliver messages back and forth as follows:
Task1: A TCP client which opens a connection to a server and prints any data which the server sends.
Task2: A web server which reads data sent by a client and echoes it back as an HTTP response.
Task3: A web server which analyses the GET request sent to it by a client, and forwards this information on to the program in the first task to connect to another server.
Task4: The same as task3, although now the server is able to handle concurrent requests.
The code for each of these tasks can be found at the following github repository: