python flask 使用cookie或者session存储用户信息

关于delete cookie之类的都比较简单,我就贴一个写法,具体函数调用就不写了。

app.py

from flask import Flask,url_for,request,render_template,redirect,session,make_response


app=Flask(__name__)
app.config['TEMPLATES_AUTO_RELOAD']=True
#this secret key is required for using cookie and session
app.config['SECRET_KEY'] = '$%^&*()345671231adFGHJBHJK,./'

@app.route('/',methods=['GET','POST'])
def index():
	if request.method=='GET':
		return render_template('index.htm')
	elif request.method=='POST':
		user_name=request.form.get('user_name')
		password=request.form.get('password')
		print(user_name)
		
		#use cookie to restore infomation
		resp=make_response(redirect(url_for('login')))
		resp.set_cookie('username',user_name,max_age=3600)
		#use_session to restore infomation
		session['password']=password
		#if you don't return resp, your cookie is not restored.
		return resp

@app.route('/login/')
def login():
	#to get infomation from cookie&session
	user_name=request.cookies.get('username')
	password=session['password']
	
	#print("we get user name"+user_name)
	return render_template('login.htm',user_name=user_name,password=password)


if __name__ =="__main__":
	app.run(debug=True)

login.htm




    
    index


Hello, {{user_name}}!

We know your password is {{password}}

index.htm




    
    index


user name:
password:

 

你可能感兴趣的:(flask)