Updating some documentation, README

This commit is contained in:
Jacob Windle 2019-01-27 11:58:48 -05:00
parent 7dd14cbd06
commit 9bb57aebfe
2 changed files with 8 additions and 5 deletions

View File

@ -9,7 +9,7 @@ am familiar with the language.
My goal for this project is to have it be easy to spin up, and compatible with major browsers. It will do 2 things. My goal for this project is to have it be easy to spin up, and compatible with major browsers. It will do 2 things.
1. It will monitor application-level traffic (anything over HTTP/HTTPS) - and log it. 1. It will monitor application-level traffic (anything over HTTP/HTTPS) - and log it.
2. It will block traffic after it's detected that you've been on a certain site for too long. 2. It will block traffic after it's detected that you've visited a site too much.
In the future I would like it to: In the future I would like it to:
@ -38,6 +38,8 @@ To run them, install the requirements with Pip, then run
4. Get Vagrantfile so can test with an actual browser that asks for a proxy. 4. Get Vagrantfile so can test with an actual browser that asks for a proxy.
5. ~~Implement forwarding an HTTP request to the desired host after proxy request.~~ 5. ~~Implement forwarding an HTTP request to the desired host after proxy request.~~
6. ~~Return response from forwarded HTTP request to client.~~ 6. ~~Return response from forwarded HTTP request to client.~~
7. Add some sort of backing store for keeping track of how many requests go to certain hosts. 7. ~~Add some sort of backing store for keeping track of how many requests go to certain hosts.~~
- Adding sqlite. - ~~Adding sqlite.~~
8. Add blocking for going over time limits on hosts. 8. Add blocking for going over ~~time limits~~ *visit limits* on hosts.
9. Add some sort of configuration management, through a config file, and eventually a web interface.
10. HTTPS support (ooh, ahh).

View File

@ -33,13 +33,14 @@ const processRequest = (request, response) => {
// Set up an end handler for the socket connection. // Set up an end handler for the socket connection.
request.on("end", () => { request.on("end", () => {
body = Buffer.concat(body).toString(); body = Buffer.concat(body).toString();
logger.info({message: "Got a message!"});
logger.info({message: "Requesting: " + req.url}); logger.info({message: "Requesting: " + req.url});
const hostUrl = new url.URL(req.url); const hostUrl = new url.URL(req.url);
myDb.visitHost(hostUrl.hostname); myDb.visitHost(hostUrl.hostname);
// Complicated line of JS to forward request, and pipe it to the // Complicated line of JS to forward request, and pipe it to the
// response object. // response object.
//
// Uses closures to ensure that both req and res are what I want.
req.pipe(http.request(req.url, (resp) => {resp.pipe(res)})); req.pipe(http.request(req.url, (resp) => {resp.pipe(res)}));
}); });
} }