Blame view
node_modules/forwarded/index.js
641 Bytes
f7563de62
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
/*! * forwarded * Copyright(c) 2014 Douglas Christopher Wilson * MIT Licensed */ /** * Module exports. */ module.exports = forwarded /** * Get all addresses in the request, using the `X-Forwarded-For` header. * * @param {Object} req * @api public */ function forwarded(req) { if (!req) { throw new TypeError('argument req is required') } // simple header parsing var proxyAddrs = (req.headers['x-forwarded-for'] || '') .split(/ *, */) .filter(Boolean) .reverse() var socketAddr = req.connection.remoteAddress var addrs = [socketAddr].concat(proxyAddrs) // return all addresses return addrs } |