当前借助 Flask-Login 实现的登录功能将数据存储在用户会话中,Flask 默认存储在客户端 cookie中,因此服务器不存储任何与用户相关的信息;它要求客户存储它。看起来这个实现符合 REST 的 无状态 要求,但是在 RESTful Web 服务中使用 cookie 属于灰色区域,因为对于不是 Web 浏览器的客户端来说实现它们可能很麻烦。因此,通常认为在 API 中使用 cookie 是一个糟糕的设计选择。
https://stackoverflow.com/a/59826012/说:
基于会话的身份验证是有状态的。这意味着身份验证记录或会话必须同时保存在服务器端和客户端。后端跟踪数据库中的活动会话,而在前端创建一个包含会话标识符的 cookie。
https://dzone.com/articles/cookies-vs-tokens-the-definitive-guide说
基于 Cookie 的身份验证是有状态的。这意味着身份验证记录或会话必须同时保存在服务器端和客户端。服务器需要跟踪数据库中的活动会话,而在前端创建一个包含会话标识符的 cookie,因此名称为基于 cookie 的身份验证。
基于会话的身份验证与基于 cookie 的身份验证相同是否正确?
基于会话/cookie 的身份验证是否在服务器端存储用户/会话/...?
它是有状态的还是无状态的?
基于 cookie 的身份验证和基于令牌的身份验证之间的区别是否正是前者未签名,而后者是?
谢谢。