Search code examples
apinode.jshttp-proxy

Using Node JS to proxy http and modify response


I'm trying to write a front end to an API service with Node JS.

I'd like to be able to have a user point their browser at my node server and make a request. The node script would modify the input to the request, call the api service, then modify the output and pass back to the user.

I like the solution here (with Express JS and node-http-proxy) as it passes the cookies and headers directly from the user through my site to the api server.

proxy request in node.js / express

I see how to modify the input to the request, but i can't figure out how to modify the response. Any suggestions?


Solution

  • Harmon is designed to plug into node-http-proxy https://github.com/No9/harmon It uses trumpet and so is stream based to work around any buffering problems. It uses an element and attribute selector to enable manipulation of a response.

    This can be used to modify output response.

    See here: https://github.com/nodejitsu/node-http-proxy/issues/382#issuecomment-14895039