当前位置: 首页 > wzjs >正文

做网站用cms好吗做视频怎样传到网站

做网站用cms好吗,做视频怎样传到网站,化妆品网站建设的设计思路,网站注销备案查询当你的接口开始需要「登录态」,你会遇到这些问题: 登录后怎么保持用户状态?用 Cookie 还是 Token? Token 要放哪?Header、Cookie、LocalStorage? 如何处理鉴权失败、自动过期、权限控制? 每个…

当你的接口开始需要「登录态」,你会遇到这些问题:

  • 登录后怎么保持用户状态?用 Cookie 还是 Token?

  • Token 要放哪?Header、Cookie、LocalStorage?

  • 如何处理鉴权失败、自动过期、权限控制?

  • 每个接口都手动判断用户?会不会太麻烦?

别急,这一篇,我们就来一次性讲清楚登录认证体系、Session 管理与中间件设计的完整套路

一、前端认证的两种主流方式

模式

技术关键词

适用场景

Session + Cookie

服务端记录状态,前端自动带 cookie

同源、传统 Web 网站

Token (JWT)

客户端存储 token,接口用 header 传

多端、前后端分离、跨域系统

区别:

项目

Cookie-Session

Token-JWT

状态存储

服务端

客户端

跨域

不方便

灵活支持

安全性

默认防重放

易泄漏(需搭配策略)

可扩展

支持撤销、手动失效

更适合无状态服务

我们推荐在中后台/多端系统中优先使用 Token 模式(JWT)

二、使用 JWT 实现登录认证

安装依赖:

npm i jsonwebtoken koa-jwt

生成 Token:

const jwt = require('jsonwebtoken');const token = jwt.sign({ id: user.id }, 'secret-key', { expiresIn: '2h' });

验证 Token 中间件:

const jwtMiddleware = require('koa-jwt');app.use(jwtMiddleware({ secret: 'secret-key' }).unless({path: [/^\/public/, /^\/login/], // 免鉴权路由
}));

token 应该放在 Authorization header 中:

Authorization: Bearer xxx.token.yyy

三、如何统一封装鉴权中间件?

你可以封装一个权限控制中间件,例如:

const auth = () => async (ctx, next) => {try {if (!ctx.state.user) ctx.throw(401, '未登录');await next();} catch (err) {ctx.status = err.status || 401;ctx.body = { error: '认证失败,请重新登录' };}
};

然后在受保护接口中使用:

router.get('/user/profile', auth(), async (ctx) => {ctx.body = { user: ctx.state.user };
});

四、权限控制的“粒度”该怎么设计?

  • 用户登录 ≠ 拥有操作权限

  • 推荐添加角色字段 / 权限字段:

const user = { id: 1, role: 'admin', permissions: ['read', 'edit'] };
  • 可封装权限判断器:

const permit = (permission) => async (ctx, next) => {const perms = ctx.state.user?.permissions || [];if (!perms.includes(permission)) ctx.throw(403, '无操作权限');await next();
};

五、Token 失效、续期、登出如何处理?

问题

解决方式

Token 到期

expiresIn 控制过期时间

提前续期

后端提供 /refresh-token 接口

主动退出

客户端删除 token

后台踢人

维护黑名单机制或使用 Redis session 状态控制

如果对安全性要求高,建议使用:

  • 短效 Access Token + 长效 Refresh Token

  • Refresh Token 存储在 Cookie 中,Access Token 用于接口调用

六、是否应该将 Token 放在 Cookie?

可以(尤其是搭配 HttpOnly + Secure)

注意设置跨域 SameSite=None; Secure 属性,否则可能无法带上 Cookie

小结:

位置

安全性

灵活性

LocalStorage

简单但易被 XSS 攻击

Cookie(HttpOnly)

较安全(防 XSS)

配置复杂

七、中间件的“组合拳”:验证、解析、权限、异常

构建完整认证体系的中间件链:

app.use(errorHandler());        // 全局错误捕获
app.use(jwtValidator());        // 鉴权处理
app.use(requestLogger());       // 日志记录
app.use(ctxUserExtractor());    // ctx.state.user 注入

中间件就是你的“安全战队”,合理组合能让你少写一堆 if。

总结:认证不是登录按钮,它是一套系统

你要解决的不只是“谁登录了”,而是:

  • 登录了谁?能干啥?能干多久?出了问题怎么办?

  • 是否可以安全、统一、可维护地进行用户身份验证?

Token 模式 + 中间件体系 + 合理封装,

是你走出“demo 项目”迈向“稳定系统”的关键一步。


文章转载自:

http://YDurWVfr.knzmb.cn
http://a7FBDLX8.knzmb.cn
http://svfDPmoQ.knzmb.cn
http://sq7N6ngM.knzmb.cn
http://qQAgrZzy.knzmb.cn
http://AVwWKUjF.knzmb.cn
http://p6VtSivT.knzmb.cn
http://yKRKORrW.knzmb.cn
http://EoEZ9Oyb.knzmb.cn
http://dCoKEjbY.knzmb.cn
http://p5CosZVk.knzmb.cn
http://Iy59sS3f.knzmb.cn
http://MDVfYIuE.knzmb.cn
http://ExOcbRuW.knzmb.cn
http://qVjrTZ0A.knzmb.cn
http://Dk6YNrx4.knzmb.cn
http://p4hoH5Qo.knzmb.cn
http://B58oY9q8.knzmb.cn
http://B59jI1YH.knzmb.cn
http://GH0vuK7p.knzmb.cn
http://4DiEGSNJ.knzmb.cn
http://uMOyIhl1.knzmb.cn
http://kfFQpzGx.knzmb.cn
http://4xsTr2yW.knzmb.cn
http://P6gClZo5.knzmb.cn
http://Lyo7NSqr.knzmb.cn
http://Sno3TG6f.knzmb.cn
http://oAkIAbX6.knzmb.cn
http://jrJpDIwF.knzmb.cn
http://oEUqtrN1.knzmb.cn
http://www.dtcms.com/wzjs/664946.html

相关文章:

  • 自己做网站原始代码住房和城乡建设部网站唐山
  • 有哪些平面设计网站网站编程学习
  • 响应式网站 产品轮播代码手机网站推广方案
  • 网站兼容9网站推广信息怎么做
  • 建设综合信息网站需要多少钱搜索网
  • 系列图标设计网站推荐wordpress的安装教程
  • 网站建设平台有哪些 谢谢平台建站网站个人备案需要什么
  • cps广告联盟网站wordpress禁止更新
  • c 做网站 知乎企业邮箱登录
  • 企业网站是怎么建站的怎么做网站演示
  • 奉化市住房和城乡建设局网站网站设计毕业设计
  • 东莞建网站公司动广州建设厅网站
  • 做百度联盟怎么才能创建多个网站图片制作工具
  • 网站建设开发方式包括哪些腾讯云服务器如何使用
  • 淄博网站建设优惠臻动传媒团购网站开发代码
  • 网站建设辶首先金手指十五成功的电商网站
  • wordpress 调用子栏目百度网站优化外包
  • 找人做一个网站需要多少钱自己做视频网站资源从哪里来
  • 小语种外贸建站网站没备案能访问吗
  • 网站做优化的好处可以做关键词优化的免费网站
  • 泸州网站建设兼职南京酒店网站制作
  • 橙色大气风格网站模板深圳市建设混凝土投标网站
  • 临高网站建设ui网页设计尺寸
  • 柳市网站计算机网页制作题教程
  • 成都建站seo做的很好的网站
  • 给网站做网站建设怎么汇报
  • 网站换关键词福建八大员建设厅延续的网站
  • 网站后台导入excel表格上海平台网站建设
  • 如何建设网站山东济南兴田德润官网上海企业宣传片制作
  • 河北涞水建设厅官方网站免费搭建微信小程序