第一次在项目中使用token总结
发布日期:2021-05-14 16:32:43 浏览次数:13 分类:精选文章

本文共 2551 字,大约阅读时间需要 8 分钟。

������JWT���������������������������

1. ���������������

���������������������������JSON Web Token��� JWT ������ React ������ cookie������������

npm install jsonwebtokennpm install react-cookies

2. ������JWT���Cookie������

��������������������������������� app.js ������������������������ router.js ���������������������������������JWT���Cookie���������

const jwt = require('jsonwebtoken');

3. ���������������

��� Express.js ������������������������������������������������������������������������������������������������������

app.all('*', (req, res, next) => {    res.header('Access-Control-Allow-Origin', '*');    res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');    res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, X-Requested-With');        // ������ Cookie ���    res.header('Set-Cookie', 'useremail=; Path=/');        next();});

4. JWT token���������������

������������������������������������������������������JWT Token������������������������

const token = jwt.sign(email, 'hmr1028', { expiresIn: '1h' });res.send({    err: 0,    msg: '������������',    tk: { token }});

5. cookie������

���React���������������JWT Token���

import cookie from 'react-cookies';// ������ token ��� cookie ���cookie.save('useremail', token, { path: '/'});

6. ��������������������� token

��������������� cookie ������ token ���������������������������

// ������ cookie ������ tokenconst tk = cookie.load('useremail');// ��������������������� tokenrequest.headers['Set-Cookie'] = tk ? [tk] : [];

7. ������ token

��������������������������������������� token ���������������

// ��� cookie ��������� tokenconst token = req.headers['Set-Cookie'].find(c => c.startsWith('useremail='))[0].split('=')[1];// ������ tokenconst payload = jwt.decode(token, 'hmr1028');

8. ������������

������ token ���������������������������������������������������������������

if (payload) {    // ���������������������������    res.json({...data});} else {    // ���������������������������������    res.send(403, { err: 403, msg: '���������������������������������' });}

9. ������������������������

������������������������������������������������������������������������

res.header('Access-Control-Allow-Origin', '*');res.header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');res.header('Access-Control-Allow-Headers', 'Content-Type, X-Requested-With, Authorization, yourHeaderFeild, Set-Cookie');

���������������������������������������JWT���������������������������������������������������������������������������

上一篇:206. 反转链表
下一篇:跨域代理实现

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2025年05月05日 00时45分03秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章