How to simulate slow connection (developer proxy in Node.js)

Update: If you use Chrome then you can use "Throttling" so simulate slow network for all your assets. This should be easier than proxy.


  1. Toggle device mode toggle device mode icon off
  2. Choose Network type.
  3. Refresh the page





https://developer.chrome.com/devtools/docs/device-mode 



Proxy:



For some time I wanted to use some proxy for development and testing of eg. slow internet connection, but it was hard to find something useful and free. I know there is Charles but buy it to use it at most one in a month is not for me.

I started thinking about Node.js, maybe I can write proxy for me? But fortunately I found one.

https://github.com/nodejitsu/node-http-proxy

With this module I can write really short code to create slow server:



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

httpProxy.createServer(function (req, res, proxy) {
  
  var buffer = httpProxy.buffer(req);

  setTimeout(function () {
    proxy.proxyRequest(req, res, {
      host: 'localhost',
      port: 8080,
      buffer: buffer
    });
  }, 2000);
}).listen(8000);

Result is proxy server running on port 8000 and returning all content from port 8080 after 2 seconds delay :)

Comments

Post a Comment

Comments:

Popular posts from this blog

How to use NPM packages from private repositories on bitbucket