标签:说明 end color set direct 获取 dir eve lan
1. Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。例如在某个网站上保存了用户名和密码,3个月内免登陆。如果你换台电脑或者浏览器的话,则需要重新登录。就此说明cookie是保存在客户端浏览器上的一个文件。
2.实例---基于cookie实现用户信息验证
当用户名和密码都正确的时候,才跳转到index页面。否则就停留在login.html页面。
2.1 在setting中注释掉下面一句,防止报错
2.2 在urls.py中写路由对应关系
2.3 views.py写后端
from django.shortcuts import render,HttpResponse,redirect from django.urls import reverse # Create your views here. user_info={ ‘dachengzi‘:{‘pwd‘:"123123"}, ‘kanbazi‘:{‘pwd‘:"kkkkkkk"}, } def login(request): if request.method==‘GET‘: return render(request,‘login.html‘) if request.method == ‘POST‘: u=request.POST.get(‘username‘) p=request.POST.get(‘pwd‘) dic=user_info.get(u) if not dic: return render(request,‘login.html‘) if dic[‘pwd‘]==p: res=redirect(‘/index/‘) res.set_cookie(‘username111‘,u) return res else: return render(request,‘login.html‘) def index(request): #获取当前以及登录的用户名字 v=request.COOKIES.get(‘username111‘) if not v: return redirect(request,‘/login/‘) return render(request,‘index.html‘,{‘current_user‘:v})
2.4 写前端 index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>欢迎登录:{{current_user}}</h1> </body> </html>
2.4 写前端 index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form action="/login/" method="POST"> <input type="text" name="username" placeholder="用户名"/> <input type="password" name="pwd" placeholder="密码"/> <input type="submit"/> </form> </body> </html>
2.5 效果
3. 在Django里面给cookie提供了一些额外的功能。
request.COOKIES-------表示用户发来数据的时候,它里面带的所携带的所有cookie信息。。。从请求中获取cookie
def cookie(request):
#用户发来请求时,它里面所携带的所有的cookie信息
request.COOKIES
request.COOKIES[‘username111‘]
request.COOKIES.get(‘username111‘)
设置cookie
response.set_cookie(‘key‘,‘value‘)
def cookie(request): #用户发来请求时,它里面所携带的所有的cookie信息 request.COOKIES request.COOKIES[‘username111‘] request.COOKIES.get(‘username111‘) response=render(request,‘index.html‘) response=redirect(‘/index/‘) #设置cookie,关闭浏览器后就失效 response.set_cookie(‘key‘,‘value‘) return response
4. 现在如果关闭浏览器的话,那么用户名和密码还得重新输入。所以我们还需要再完善一下。
res.set_cookie(‘username111‘,u,max_age=10) 设置失效时间为10秒
效果:10秒之后,用户名和密码就失效了,从index自动倒退回到login界面
标签:说明 end color set direct 获取 dir eve lan
原文地址:http://www.cnblogs.com/momo8238/p/7680917.html