技术文摘
每日一技:前端和后端读写 Cookies 的方法
2024-12-31 05:19:03 小编
每日一技:前端和后端读写 Cookies 的方法
在 Web 开发中,Cookies 是一种常用的存储机制,用于在客户端和服务器之间传递和保存少量数据。理解如何在前端和后端读写 Cookies 对于实现各种功能,如用户认证、个性化设置等至关重要。
在前端,我们可以使用 JavaScript 来读写 Cookies。通过 document.cookie 属性来操作。要设置一个 Cookie,可以使用以下代码:
document.cookie = "username=John; expires=Thu, 18 Dec 2025 12:00:00 UTC; path=/";
上述代码中,"username=John" 是 Cookie 的键值对,"expires" 用于设置 Cookie 的过期时间,"path" 则指定 Cookie 的有效路径。
读取 Cookie 则相对简单:
let cookieValue = document.cookie.split('; ').find(row => row.startsWith('username='))?.split('=')[1];
而后端的语言,如 Python 的 Django 框架、Node.js 的 Express 框架等,也都提供了相应的方法来处理 Cookies。
以 Python 的 Django 框架为例,设置 Cookie 可以这样做:
response.set_cookie('username', 'John', expires=datetime.datetime.utcnow() + datetime.timedelta(days=365), path='/')
读取 Cookie 则是:
request.COOKIES.get('username')
在 Node.js 的 Express 框架中,设置 Cookie 可以通过以下方式:
res.cookie('username', 'John', { expires: new Date(Date.now() + 365 * 24 * 60 * 60 * 1000), path: '/' });
读取 Cookie 为:
req.cookies.username
需要注意的是,Cookies 有一些限制,例如大小通常有限制,而且用户可以在浏览器中禁用 Cookies。为了保护用户隐私和数据安全,在处理 Cookies 时应遵循相关的法律法规和最佳实践。
熟练掌握前端和后端读写 Cookies 的方法,能够为我们的 Web 开发工作带来很大的便利,使我们能够更好地实现各种功能,提供更优质的用户体验。但在使用过程中,也要充分考虑到安全性、隐私性和兼容性等方面的问题。
- 高可用升级 - RocketMQ 知识体系 7
- 学会 Go 并发等待之攻略
- Pinia 与 Vuex 对比:Pinia 能否替代 Vuex ?
- JetBrains 调研:JavaScript 居首,Python 超 Java
- PHP 8.1 早期版本性能基准评测
- AMD 公开 FSR 源代码 率先支持 Unity 与虚幻引擎
- TIOBE 7 月编程语言排行榜揭晓:Java、C 与 Python 谁能夺冠?
- 我的七个 Rust 关键字
- Python 数据预处理的标准化实践
- 十种能让你的应用开发提速的框架
- Redis 持久化的基石:RDB 和 AOF
- 基础:校招必知的 Git 知识
- JetBrains 调研:JavaScript 居首,Python 再超 Java
- 为何开发人工智能选择 Python ?
- 未来五年 VR 在五大行业的应用展望