Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var httpProxy = require('http-proxy');
- var proxy = httpProxy.createServer({
- target:'http://petrpavlik.apiary-mock.com'
- });
- proxy.listen(8005);
- proxy.on('error', function (err, req, res) {
- res.writeHead(500, {
- 'Content-Type': 'text/plain'
- });
- res.end('Something went wrong. And we are reporting a custom error message.');
- });
- proxy.on('proxyRes', function (res) {
- console.log('RAW Response from the target', JSON.stringify(res.headers, true, 2));
- });
- Petrs-MacBook-Air-2:~ petr$ curl -v 127.0.0.1:8005/notes
- * About to connect() to 127.0.0.1 port 8005 (#0)
- * Trying 127.0.0.1...
- * Adding handle: conn: 0x7f977280fe00
- * Adding handle: send: 0
- * Adding handle: recv: 0
- * Curl_addHandleToPipeline: length: 1
- * - Conn 0 (0x7f977280fe00) send_pipe: 1, recv_pipe: 0
- * Connected to 127.0.0.1 (127.0.0.1) port 8005 (#0)
- > GET /notes HTTP/1.1
- > User-Agent: curl/7.30.0
- > Host: 127.0.0.1:8005
- > Accept: */*
- >
- < HTTP/1.1 404 Not Found
- < cache-control: no-cache, no-store
- < content-type: text/html; charset=utf-8
- < date: Sat, 28 Jun 2014 09:40:29 GMT
- * Server MochiWeb/1.0 (Any of you quaids got a smint?) is not blacklisted
- < server: MochiWeb/1.0 (Any of you quaids got a smint?)
- < content-length: 2960
- < connection: Close
- <
- var apiProxy = httpProxy.createProxyServer();
- server.get("/api/v1", function (req, res) {
- delete req.headers.host;
- req.url = req.url.replace('/api/v1', '/');
- apiProxy.web(req, res, { target: 'http://private-XXXX.apiary-mock.com/' });
- });
- var proxyOptions = {
- ignorePath: true
- };
- var apiProxy = httpProxy.createProxyServer(proxyOptions);
Add Comment
Please, Sign In to add comment