Python Django Cookie 简单用法解析


Posted in Python onAugust 13, 2019

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

Python Django 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
      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 验证成功

Python Django 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 验证成功

Python Django Cookie 简单用法解析

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

Python 相关文章推荐
详解Python3.6的py文件打包生成exe
Jul 13 Python
python utc datetime转换为时间戳的方法
Jan 15 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
May 27 Python
Python学习笔记之错误和异常及访问错误消息详解
Aug 08 Python
python 列表推导式使用详解
Aug 29 Python
使用Python和OpenCV检测图像中的物体并将物体裁剪下来
Oct 30 Python
python list数据等间隔抽取并新建list存储的例子
Nov 27 Python
Numpy将二维数组添加到空数组的实现
Dec 05 Python
Python使用正则实现计算字符串算式
Dec 29 Python
40个你可能不知道的Python技巧附代码
Jan 29 Python
PyCharm2020.1.2社区版安装,配置及使用教程详解(Windows)
Aug 07 Python
Python三维绘图之Matplotlib库的使用方法
Sep 20 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
Aug 13 #Python
Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现
Aug 13 #Python
Python人工智能之路 之PyAudio 实现录音 自动化交互实现问答
Aug 13 #Python
Django rstful登陆认证并检查session是否过期代码实例
Aug 13 #Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
Aug 13 #Python
python实现对服务器脚本敏感信息的加密解密功能
Aug 13 #Python
python多线程+代理池爬取天天基金网、股票数据过程解析
Aug 13 #Python
You might like
php cookies中删除的一般赋值方法
2011/05/07 PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
2013/06/24 PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
2017/06/07 PHP
PHP简单装饰器模式实现与用法示例
2017/06/22 PHP
Thinkphp 框架基础之入口文件功能、定义与用法分析
2020/04/27 PHP
javascript获得CheckBoxList选中的数量
2009/10/27 Javascript
jquery 弹出登录窗口实现代码
2009/12/24 Javascript
javascript 全选与全取消功能的实现代码
2012/12/23 Javascript
单击按钮显示隐藏子菜单经典案例
2013/01/04 Javascript
javascript window.open打开新窗口后无法再次打开该窗口问题的解决方法
2014/04/12 Javascript
JS实现常见的TAB、弹出层效果(TAB标签,斑马线,遮罩层等)
2015/10/08 Javascript
微信小程序 页面跳转和数据传递实例详解
2017/01/19 Javascript
seajs中最常用的7个功能、配置示例
2017/10/10 Javascript
浅谈react性能优化的方法
2018/09/05 Javascript
利用Electron简单撸一个Markdown编辑器的方法
2019/06/10 Javascript
Vue路由守卫及页面登录权限控制的设置方法(两种)
2020/03/31 Javascript
ant design vue中表格指定格式渲染方式
2020/10/28 Javascript
解读Django框架中的低层次缓存API
2015/07/24 Python
Python环境下搭建属于自己的pip源的教程
2016/05/05 Python
python验证码识别实例代码
2018/02/03 Python
python中metaclass原理与用法详解
2019/06/25 Python
python语言的优势是什么
2020/06/17 Python
新百伦折扣店:Joe’s New Balance Outlet
2016/08/20 全球购物
中国专业的音频分享平台:喜马拉雅
2019/05/24 全球购物
阿拉伯书店:Jamalon
2019/07/24 全球购物
火山动力Java笔试题
2014/06/26 面试题
幼儿园英语教学反思
2014/01/30 职场文书
开学寄语大全
2014/04/08 职场文书
生产车间标语
2014/06/11 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
酒店办公室主任岗位职责
2015/04/01 职场文书
2015年基层党支部工作总结
2015/05/21 职场文书
2015年暑期社会实践总结
2015/07/13 职场文书
七个非常实用的Python工具包总结
2021/06/15 Python
分享7个 Python 实战项目练习
2022/03/03 Python
vue实现书本翻页动画效果实例详解
2022/04/08 Vue.js