1 | 1 | var jwt = require('jsonwebtoken'); |
|
2 | |||
3 | 1 | module.exports = function(secret) { |
|
4 | 1 | return function(req, res, next) { |
|
5 | let token; |
||
6 | 3 | if (req.headers.authorization) { |
|
7 | token = req.headers['authorization'].split(' ')[1]; |
||
8 | } else { |
||
9 | 3 | token = req.body.token || req.query.token || req.headers['x-access-token']; |
|
10 | } |
||
11 | 3 | if (token) { |
|
12 | 2 | jwt.verify(token, secret, function(err, decoded) { |
|
13 | 2 | if (err) { |
|
14 | 1 | return res.status(403).send({ success: false, message: 'Failed to authenticate token.' }); |
|
15 | } else { |
||
16 | 1 | req.decoded = decoded; |
|
17 | 1 | next(); |
|
0 ignored issues
–
show
Best Practice
introduced
by
![]() |
|||
18 | } |
||
19 | }); |
||
0 ignored issues
–
show
|
|||
20 | } else { |
||
21 | 1 | return res.status(403).send({ |
|
22 | success: false, |
||
23 | message: 'No token provided.' |
||
24 | }); |
||
25 | } |
||
26 | } |
||
27 | } |
||
28 |