Django——cookie保持登录

普通登录时,无法保持登录的状态,每一次请求时都需要重新登录。

而在登录时,生成cookie并保存在浏览器中,这样每次登录就会携带登录信息,就可以保持登录状态了。

 

操作cookie语法:

1
2
3
4
5
6
7
8
9
# (1) 设置cookie:
res = HttpResponse(...) 或 rep = render(request, ...) 或 rep = redirect()
res.set_cookie(key,value,max_age...)
res.set_signed_cookie(key,value,salt='加密盐',...) 
 
# (2) 获取cookie:
request.COOKIES  <br>
# (3) 删除cookie
response.delete_cookie("cookie_key",path="/",domain=name)

  

例子:

设置cookie:

1
2
3
4
5
6
7
8
9
10
def login(request):
  login_success=1
  if login_success:
    # 获取响应体(render或redirect也可以,都是继承的HttpResponse)
    response=HttpResponse("登录成功")
    # 在响应体设置cookie
    response.set_cookie("is_login", True)
    return response
  else:
    return HttpResponse("登录失败")

  

读取cookie:

1
2
3
4
5
6
7
8
def index(request):
  cookies = request.COOKIES
  # cookies.get("k","")获取不到默认为""
  is_login = cookies.get("is_login")
  if is_login:
    #已登录
  else:
    #跳转到登录页面

  

删除cookie:

1
response.delete_cookie("cookie_key",path="/",domain=name)

  

posted @   映辉  阅读(199)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示