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对象。

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

技术教程推荐

邱岳的产品手记 -〔邱岳〕

深入剖析Kubernetes -〔张磊〕

玩转Git三剑客 -〔苏玲〕

许式伟的架构课 -〔许式伟〕

说透中台 -〔王健〕

移动端自动化测试实战 -〔思寒〕

WebAssembly入门课 -〔于航〕

业务开发算法50讲 -〔黄清昊〕

AI绘画核心技术与实战 -〔南柯〕

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