ExpressJS: эта логика уже верна? - PullRequest
0 голосов
/ 10 мая 2019

Я создал 2 промежуточных ПО, они authenticate.js и redirectedIfAuthenticated.js, поэтому я хочу создать оптимизированное и масштабируемое промежуточное ПО для них, но я не знаю, правильно ли это уже или нет.Вот они:

./app/middleware/authenticate.js

'use strict';

import jwt from 'jsonwebtoken';

export default (req, res, next) => {
    jwt.verify(req.headers['x-access-token'], req.app.get('secretKey'), (err, decoded) => {
        if (err) {
            res.status(400).send({
                status: 'Error',
                message: err.message,
                data: null
            });
        } else {
            req.body.id = decoded.id;
            next();
        }
    });
}

./app/middleware/redirectedIfAuthenticated.js

'use strict';

import jwt from 'jsonwebtoken';

export default (req, res, next) => {
    jwt.verify(req.headers['x-access-token'], req.app.get('secretKey'), (err, decoded) => {
        if (err) {
            next();
        } else {
            res.status(400).send({
                message: 'User already login',
            });
        }
    });
};

./routes/index.js

'use strict';

import AuthenticateMiddleware from './../app/middleware/authenticate';
import redirectedIfAuthenticated from './../app/middleware/redirectedIfAuthenticated';
import express from 'express';
import AuthRoutes from './auth';
import UserRoutes from './user';

const app = express();

app.use('/auth', redirectedIfAuthenticated, AuthRoutes);
app.use('/user', AuthenticateMiddleware, UserRoutes);

app.all('*', (req, res) => {
    res.status(404).send({
        message: `${req} not found`
    });
});

export default app;

Вопрос в том, чтоя делаю уже правильно?для AuthRoutes?потому что я немного странно себя чувствую из-за своего кода.кстати они отлично работают

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...