Django - Cookies

Django - Cookies 首页 / Django入门教程 / Django - Cookies

cookie 是由网络浏览器存储在客户端的一小段信息。 Cookie的最大大小为4KB,大多数网络浏览器每个网站最多允许20个Cookie。 Cookie信息将添加到request中。 Cookie可以有一个到期日期和时间,之后它会自动被删除。 Cookie可能还被设置为随着浏览器会话过期。

Cookie方法

Django提供了内置的方法来设置,更新,获取和删除cookie。

set_cookie('cookie_name', 'cookie-value')
get('cookie_name')

get()和set_cookie()

要创建或更新cookie,请在views.py中添加以下代码

    from django.http import HttpResponse
    
    def setcookie(request):  
        response = HttpResponse("Welcome Guest.")  
        response.set_cookie('programink', 'We love Django')  
        return response  
                                

要获取Cookie信息,请在views.py中添加以下代码

    def getcookie(request):  
        info  = request.COOKIES.get('programink') 
        return HttpResponse("Welcome Back." +  info);  
                                

同时在下面添加匹配的Url路径app > urls.py

    from django.urls import path  
    from . import views  
    
    urlpatterns = [  
        ...
        path('setcookie',views.setcookie),  
        path('getcookie',views.getcookie)  
    ]  
                                

首次访问该网址时,响应为:

Welcome Guest.

重新访问url响应将是:

Welcome Back. We love Django

Cookie有效期

set_cookie(key, value='', max_age=None, expires=None)
  • max_age   -  应为秒数,如果Cookie的持续时间仅与客户端的浏览器会话一样长,则应为秒。
  • expires      -  应为格式为" Wdy,DD-Mon-YY HH:MM:SS GMT"的字符串,或者为UTC中的datetime.datetime对象。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

Node.js开发实战 -〔杨浩〕

Electron开发实战 -〔邓耀龙〕

物联网开发实战 -〔郭朝斌〕

说透数字化转型 -〔付晓岩〕

PyTorch深度学习实战 -〔方远〕

超级访谈:对话张雪峰 -〔张雪峰〕

深入C语言和程序运行原理 -〔于航〕

去无方向的信 -〔小麥〕

AI大模型之美 -〔徐文浩〕

好记忆不如烂笔头。留下您的足迹吧 :)