server/bo_client/server/proxies/bnf-sparql.js
author Chloe Laisne <chloe.laisne@gmail.com>
Sun, 17 Jul 2016 23:58:55 +0200
changeset 243 0f29cc270f9e
parent 137 1baa7c6bd370
child 305 ff6cf3fc5f40
permissions -rw-r--r--
Fix firefox focus JSLinting
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
137
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
/*jshint node:true*/
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
var proxyPath = '/proxy/bnf-sparql';
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
module.exports = function(app) {
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
  // For options, see:
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
  // https://github.com/nodejitsu/node-http-proxy
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
  var proxy = require('http-proxy').createProxyServer({});
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
  proxy.on('error', function(err, req) {
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
    console.error(err, req.url);
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
  });
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
  app.use(proxyPath, function(req, res, next){
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
    // include root path in proxied request
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
    //req.url = proxyPath + '/' + req.url;
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
    req.url = req.url.slice(1);
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
    proxy.web(req, res, { target: 'http://data.bnf.fr/sparql' });
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
  });
1baa7c6bd370 add subject edition
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
};