/var/www/qr4y.com/server/delivery/api/middleware
Edit: /var/www/qr4y.com/server/delivery/api/middleware/no_auth.js (676B)
const jwt = require('jsonwebtoken')
const config = require('../../config/app.json')
const { Unauthorized, Forbidden } = require('../responseModels/errors/index')
module.exports = async (req, res, next) => {
try {
if (req.header('Authorization')) {
let token = req.header('Authorization').replace('Bearer', '')
token = token.replace(' ', '')
if (token != '') {
if (!token) {
throw new Forbidden({ code: 403 })
}
jwt.verify(token, config.jwt.secret, (err, decoded) => {
if (err) {
throw new Unauthorized({ code: 401 })
}
req.user = decoded
next()
})
} else {
next()
}
}
} catch (err) {
next(err)
}
}