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 相关文章推荐
Python MD5文件生成码
Jan 12 Python
python在windows和linux下获得本机本地ip地址方法小结
Mar 20 Python
python使用MySQLdb访问mysql数据库的方法
Aug 03 Python
对python append 与浅拷贝的实例讲解
May 04 Python
python selenium 对浏览器标签页进行关闭和切换的方法
May 21 Python
python中的变量如何开辟内存
Jun 26 Python
六行python代码的爱心曲线详解
May 17 Python
python实现得到当前登录用户信息的方法
Jun 21 Python
Python在OpenCV里实现极坐标变换功能
Sep 02 Python
TensorFLow 数学运算的示例代码
Apr 21 Python
python 实现网易邮箱邮件阅读和删除的辅助小脚本
Mar 01 Python
十个Python自动化常用操作,即拿即用
May 10 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
老机欣赏|中国60年代精品收音机
2021/03/02 无线电
在“咖啡之国”感受咖啡文化
2021/03/03 咖啡文化
香妃
2021/03/03 冲泡冲煮
PHP 数组基础知识小结
2010/08/20 PHP
php四种定界符详解
2017/02/16 PHP
php+iframe 实现上传文件功能示例
2020/03/04 PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
2020/09/25 PHP
Js放到HTML文件中的哪个位置有什么区别
2013/08/21 Javascript
js键盘上下左右键怎么触发function(实例讲解)
2013/12/14 Javascript
jquery序列化表单去除指定元素示例代码
2014/04/10 Javascript
JS中使用sort结合localeCompare实现中文排序实例
2014/07/23 Javascript
js实现禁止中文输入的方法
2015/01/14 Javascript
js计算任意值之间随机数的方法
2015/01/16 Javascript
JavaScript中5种调用函数的方法
2015/03/12 Javascript
JS给Textarea文本框添加行号的方法
2015/08/20 Javascript
基于JavaScript实现生成名片、链接等二维码
2015/09/20 Javascript
JS获取当前脚本文件的绝对路径
2016/03/02 Javascript
Nodejs Stream 数据流使用手册
2016/04/17 NodeJs
基于Bootstrap 3 JQuery及RegExp的表单验证功能
2017/02/16 Javascript
通过js修改input、select默认字体颜色
2017/04/19 Javascript
弱类型语言javascript中 a,b 的运算实例小结
2019/08/07 Javascript
python解析xml文件实例分析
2015/05/27 Python
Python的条件语句与运算符优先级详解
2015/10/13 Python
tensorflow建立一个简单的神经网络的方法
2018/02/10 Python
selenium + python 获取table数据的示例讲解
2018/10/13 Python
python截取两个单词之间的内容方法
2018/12/25 Python
python自动化之Ansible的安装教程
2019/06/13 Python
如何使用python写截屏小工具
2020/09/29 Python
Python+kivy BoxLayout布局示例代码详解
2020/12/28 Python
html5中的input新属性range使用记录
2014/09/05 HTML / CSS
html5使用canvas画三角形
2014/12/15 HTML / CSS
美国受信赖的教育产品供应商:Nest Learning
2018/06/14 全球购物
单位在职证明范本
2014/01/09 职场文书
不假外出检讨书
2014/01/27 职场文书
语文课外活动总结
2014/08/27 职场文书
Java练习之潜艇小游戏的实现
2022/03/16 Java/Android