home.html:
个人信息页面 个人信息页面
只有返回一串字符串
login.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 验证成功
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。