Python Django Cookie 简单用法解析

 更新时间:2019年08月13日 10:19:56   作者:Sch01aR#   我要评论

这篇文章主要介绍了Python Django Cookie 简单用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

home.html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>个人信息页面</title>
</head>
<body>
<p>个人信息页面</p> 
</body>
</html>

只有返回一串字符串

login.html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>登录页面</title>
</head>
<body> 
<p>登录页面</p> 
<form action="/login/" method="post">
  {% csrf_token %}
  <p>
    账号:
    <input type="text" name="user">
  </p>
  <p>
    密码:
    <input type="text" name="pwd">
  </p>
  <p>
    <input type="submit" value="登录">
  </p>
</form>
</body>
</html>

要考虑加上 csrf_token,不然会 403

login 函数:

from django.shortcuts import render, redirect
from app01 import models
def login(request):
  if request.method == "POST":
    username = request.POST.get("user")
    password = request.POST.get("pwd")
    if username == "admin" and password == "admin":
      rep = redirect("/home/") # 得到一个响应对象
      rep.set_cookie("login", "success") # 设置 cookie
      return rep
  return render(request, "login.html")

set_cookie() 中的第一个参数为 key,第二个参数为 value

home 函数:

from django.shortcuts import render, redirect
from app01 import models 
def home(request):
  ret = request.COOKIES.get("login") # 获取 cookie 的 value
  if ret == "success":
    # cookie 验证成功
    return render(request, "home.html")
  else:
    return redirect("/login/")

输入账号、密码:admin,cookie 验证成功

给 cookie 加盐:

login 函数:

from django.shortcuts import render, redirect
from app01 import models
def login(request):
  if request.method == "POST":
    username = request.POST.get("user")
    password = request.POST.get("pwd")
    if username == "admin" and password == "admin":
      rep = redirect("/home/") # 得到一个响应对象
      # rep.set_cookie("login", "success") # 设置 cookie
      rep.set_signed_cookie("login", "success", salt="whoami") # 设置 cookie 并加盐
      return rep
  return render(request, "login.html")

home 函数:

from django.shortcuts import render, redirect
from app01 import models
def home(request):
  # ret = request.COOKIES.get("login") # 获取 cookie 的 value
  ret = request.get_signed_cookie("login", salt="whoami") # 获取加盐后 cookie 的 value
  if ret == "success":
    # cookie 验证成功
    return render(request, "home.html")
  else:
    return redirect("/login/")

输入账号、密码:admin,cookie 验证成功

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 开始着手第一个Django项目

    开始着手第一个Django项目

    这篇文章主要介绍了开始着手第一个Django项目的过程,Django是丰富多彩的Python框架中人气最高的一个,功能多而全,需要的朋友可以参考下
    2015-07-07
  • python回调函数中使用多线程的方法

    python回调函数中使用多线程的方法

    这篇文章主要介绍了python回调函数中使用多线程的方法,需要的朋友可以参考下
    2017-12-12
  • python如何通过twisted实现数据库异步插入

    python如何通过twisted实现数据库异步插入

    这篇文章主要为大家详细介绍了python如何通过twisted实现数据库异步插入,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • python pandas模块基础学习详解

    python pandas模块基础学习详解

    这篇文章主要介绍了python pandas模块基础学习详解的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Python实现随机选择元素功能

    Python实现随机选择元素功能

    这篇文章主要为大家详细介绍了Python实现随机选择元素功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • Python并发:多线程与多进程的详解

    Python并发:多线程与多进程的详解

    今天小编就为大家分享一篇关于Python并发:多线程与多进程的详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • python 查找文件夹下所有文件 实现代码

    python 查找文件夹下所有文件 实现代码

    python 查找文件夹下所有文件,需要的朋友可以参考下。
    2009-07-07
  • Python xlrd读取excel日期类型的2种方法

    Python xlrd读取excel日期类型的2种方法

    这篇文章主要介绍了Python xlrd读取excel日期类型的2种方法,本文同时讲解了xlrd读取excel某个单元格的方法,需要的朋友可以参考下
    2015-04-04
  • Python循环结构的应用场景详解

    Python循环结构的应用场景详解

    这篇文章主要介绍了Python循环结构的应用场景详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Django框架实现逆向解析url的方法

    Django框架实现逆向解析url的方法

    这篇文章主要介绍了Django框架实现逆向解析url的方法,结合实例形式分析了Django逆向解析URL的原理、步骤、相关实现技巧与注意事项,需要的朋友可以参考下
    2018-07-07

最新评论