Способ реализации этих библиотек всегда будет варьироваться в зависимости от стандарта проекта.
Я постараюсь немного упростить здесь, чтобы сделать его как можно проще.
Давайте Предположим, у вас есть маршрут /login
.
const express = require('express')
const bodyParser = require('body-parser')
const cookieParser = require('cookie-parser')
const app = express();
app.use(bodyParser.json());
app.use(cookieParser());
app.post('/login', loginHandler); // YOUR route with JWT inside of login funciton.
app.listen(3000);
Вторым параметром app.post
будет функция, содержащая ваши обработчики JWT, например:
const loginHandler = (req, res) => {
// username and password
const { username, password } = req.body
// create new token
const myJwtToken = jwt.sign({ username },
jwtKey, {
algorithm: 'HS256',
expiresIn: XXSeconds // The expiredIn property can be human readable like '6 months', '1 week', etc.
});
console.log('My token is: ', myJwtToken);
// set token and expiry date
res.cookie('token', myJwtToken, { maxAge: XXSeconds * 1000 });
res.end();
}
Полезные ссылки: