How do I use node.js http-proxy for logging HTTP traffic in a computer?

后端 未结 2 852
一生所求
一生所求 2021-01-01 03:39

I am trying to implement the simplest example:

var http = require(\'http\'),
var httpProxy = require(\'http-proxy\');

httpProxy.createServer(function (req,          


        
相关标签:
2条回答
  • 2021-01-01 04:00

    Here is an simple example how to log requests. I use a similar to log all my domains to one database.

    I copied much from http://blog.nodejitsu.com/http-proxy-middlewares

    var fs = require('fs'),
        http = require('http'),
        httpProxy = require('http-proxy'),
    
    logger = function() {    
      // This will only run once
      var logFile = fs.createWriteStream('./requests.log');
    
      return function (request, response, next) { 
        // This will run on each request.
        logFile.write(JSON.stringify(request.headers, true, 2));
        next();
      }
    }
    
    httpProxy.createServer(
      logger(), // <-- Here is all the magic
      {
        hostnameOnly: true,
        router: {
          'example1.com': '127.0.0.1:8001', // server on localhost:8001
          'example2.com': '127.0.0.1:8002'  // server 2 on localhost:8002
      }
    }).listen(8000);
    
    0 讨论(0)
  • 2021-01-01 04:18

    I am not sure if this helps because the posted information are really short. But I found a post that they updated the api ...

    you might want to check out this post:

    Updating to node-http-proxy v0.5.0 http://blog.nodejitsu.com/updating-node-http-proxy

    0 讨论(0)
提交回复
热议问题