1 | var norma = require('norma');
|
2 | var request = require('request');
|
3 | var debug = require('debug')('waif:pipe');
|
4 | var Uri = require('./state/uri');
|
5 |
|
6 | module.exports = function(config) {
|
7 | var service = this.service;
|
8 |
|
9 | var args = norma('url:s', arguments);
|
10 | debug('service %s piped to %s', service.name, args.url);
|
11 |
|
12 | var _uri = new Uri();
|
13 | _uri.set(args.url);
|
14 |
|
15 | return function(req, res, next) {
|
16 | debug('service %s piping to %s', service.name, req.url);
|
17 |
|
18 | var x = request(_uri.requestUrl(req.url));
|
19 | req.pipe(x);
|
20 | x.pipe(res);
|
21 | };
|
22 | };
|