实现要点(伪代码)
实现要点(伪代码)
生成:密码学安全随机(>=16 字节),与会话绑定
下发:表单隐藏域或 meta 标签,前端读取后放自定义头
校验:服务端比对会话中的值,不一致返回 403
轮换:登录成功后重新生成,叠加会话轮换前端附加请求头示例
前端附加请求头示例
fetch('/api/transfer', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-CSRF-Token': document.querySelector('meta[name=csrf-token]').content,
},
body: JSON.stringify(payload),
});Token 不要放在 URL 查询串:会进入访问日志、Referer 与浏览器历史。