| ; | |
| module.exports = setup; | |
| // // // | |
| /** | |
| * Add request token as `token` to req object | |
| * @return {Function} middleware | |
| */ | |
| function setup() { | |
| /** | |
| * Middleware | |
| * @param {Object} req Express request | |
| * @param {Object} res Express response | |
| * @param {Function} next Express next handler | |
| * @returns {void} | |
| */ | |
| return (req, res, next) => { | |
| const header = req.get('authorization'); | |
| if (req.query && req.query.token) { | |
| req.token = req.query.token; | |
| return next(); | |
| } | |
| if (header) { | |
| const parts = header.split(' '); | |
| if (parts[0] === 'Bearer') { | |
| req.token = parts[1]; | |
| return next(); | |
| } | |
| } | |
| return next(); | |
| }; | |
| } | |