UNPKG

801 BJavaScriptView Raw
1module.exports = function(r, app, opts) {
2 var API_URL = opts.apiUrl;
3 var HyperClient = r('hyperagent');
4 if (!API_URL || !HyperClient) return;
5 API_URL = API_URL.replace(/^ws/, 'http');
6
7 app.useBefore('router', function hyperclient(req, res, next) {
8 // TODO setup caching
9 var client = req.hyperclient = new HyperClient(req.get('x-api-url') || API_URL);
10 if (req.cookies._access_token) client.set('authorization', 'Bearer ' + req.cookies._access_token);
11
12 req.get('cookie') && client.set('cookie', req.get('cookie'));
13 req.get('x-forwarded-for') && client.set('x-forwarded-for', req.get('x-forwarded-for'));
14 req.get('referer') && client.set('referer', req.get('referer'));
15 req.get('user-agent') && client.set('user-agent', req.get('user-agent'));
16
17 next();
18 });
19};