Giter Site home page Giter Site logo

proxy's Introduction

Java Proxy

This application uses java Sockets to work as a proxy server

Build

To build this project you can use the maven wrapper included

./mvnw.cmd clean install

Run

Once you build the project you can just use java to run this application using the next command

java -jar proxy-0.0.1-SNAPSHOT.jar

How this works

This spring boot application that implements CommandLineRunner interface to start a ClientHandler that will be watching for client calls to the proxy port.

ClientHandler

The client handler will create a ServerSocket to listen for client calls on the configured port and it will create a new thread for every call to be able to keep receiving requests. The thread that will process the client request will be using a RequestHandler

Configuration

The only configurable value now for this application is the port used to listen for client calls and the logging levels we can change it using externalized configuration. Below we will see default values for confoiguration

logging.level.root=WARN
logging.level.com.proxy=INFO
proxy.port=8081

Tests

To test that the service is working we can use our device connected to the proxy server to run the following tests

  • To test http call open on a web browser http://google.com
  • To test https call open on a web browser https://google.com and search something on google

If we want to use the same computer we can also make use of a tool like postman and configure it to use the proxy that we have running, we can read how to do it here

Example Using Android to test the Proxy

Proxy Setup

Proxy Setup

Load Google Using Proxy

Google Loeaded

Search on Google

Search on Google

Application Logs on Eclipse

Eclipse Proxy Logs

License

MIT

proxy's People

Contributors

rafa-alarcon avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.