标签:服务器 class 客户端 img 使用 字符串 form 方法 direct
1.cookie是个啥?
cookie是本地浏览器上保存的一个文件,使用键值对的形式保存数据(字典,key和value)
账户验证成功之后,服务器端向客户端发送一段字符串,当用户再次登录的时候,服务器端不会再一次验证账户密码是否正确,而是会查看是否有这一段字符串,如果有的话,服务器端会直接跳转到登陆成功的页面
2.简单的cookie验证实例:
views.py:
user_info={ ‘user1‘:{‘pwd‘:‘123‘}, ‘user2‘:{‘pwd‘:‘321‘}, }
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) #字典的get方法,查找key值,存在返回value,否则返回none if dic and dic[‘pwd‘]==p: res=redirect(‘/index/‘) res.set_cookie(‘uname‘,u) return redirect(‘/index/‘) else: return render(request,‘login.html‘,{‘error_msg‘:"invalid"}) def index(request): user=request.COOKIES.get(‘uname‘) if not user : return redirect(‘/login/‘) else: return render(request,‘index.html‘,{‘username‘: user})
login.html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Login</title> </head> <body> <div> <form action="/login/" method="POST"> <input name="username" type="text" placeholder="用户名"/> <input name="pwd" type="password" placeholder="密码"/> <input type="submit" value="登录"/> </form> {{ error_msg }} </div> </body> </html>
index.html:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>index</title> </head> <body> {{ username }} </body> </html>
url里记得添加路由,不在赘述。
这样就成功的在本地浏览器存入了cookie,可以通过chrome查看到:
3.
标签:服务器 class 客户端 img 使用 字符串 form 方法 direct
原文地址:http://www.cnblogs.com/SunsetSunrise/p/7684170.html