Cookie和token的区别
cookie 验证是有状态的,session;
token验证是无状态的,jwt;
token可以避免CSRF攻击(跨站请求伪造),和跨域CORS(跨域资源共享)
Cookie和Token是在Web开发中常见的两种机制,用于在客户端和服务器之间传递身份验证和状态信息。它们有以下区别:
- 存储位置:
Cookie:存储在客户端(通常是浏览器)中,以文本文件的形式保存在用户设备上。
Token:通常存储在客户端,但也可以存储在服务器端,取决于具体的实现方式。
- 安全性:
Cookie:在传输过程中可能会被窃取或篡改,因为它们存储在用户的设备上,并且可以被访问。
Token:通常使用加密算法进行签名,以确保在传输过程中的安全性。因此,与Cookie相比,它们更安全,特别是JWT(JSON Web Token)这样的标准化实现。
- 大小:
Cookie:受到浏览器对Cookie大小的限制(通常为4KB),因此存储的数据量有限。
Token:通常比Cookie更小,并且可以在几KB到几百字节之间,因此可以在网络传输中更有效率地使用。
- 用途:
Cookie:主要用于在HTTP请求之间存储状态信息,例如会话管理、用户偏好设置等。
Token:主要用于实现身份验证和授权机制,如OAuth认证、JWT等。
- 跨域支持:
Cookie:受同源策略的限制,只能在设置它们的域名下发送到服务器。
Token:可以跨域发送到服务器,因为它们通常是作为HTTP请求的头部信息发送的,而不受同源策略的限制。
总的来说,Cookie和Token都是用于在客户端和服务器之间传递信息的机制,但它们的实现方式、用途和安全性有所不同,开发人员应根据具体需求选择合适的机制。
Cookie和token的区别
https://blog.fullsize.cn/2021/04/12/notion/cookie-he-token-de-qu-bie/