整个过程是这样的:
1、使用set_cookie('username', username)将用户名写入cookie,
2、request.cookie.get()去获取已经写入的cookie中的username,
3、判断cookie中的用户名是否与指定的用户名相同
就是在这个环节出问题了,使用request.cookie.get('username')获取的值是None,然后我在edge里查看,发现已经变成一长串加密后的字符串,我把这一长串字符串放进request.cookie.get()中,然后程序就正常了。
我哪个地方做错了?
[Python] 纯文本查看 复制代码 from flask import Flask, render_template, request, make_response
app = Flask(__name__)
@app.route("/")
def index():
cookies = request.cookies.get()
print(cookies)
if request.cookies.get(cookies):
return render_template("index.html")
else:
return render_template('login.html')
@app.route("/login", methods=["GET", "POST"])
def login():
# 验证表单数据
if request.method == "POST":
username = request.form['username']
password = request.form['password']
if username == 'username' and password == 'password':
response = make_response('登录成功')
response.set_cookie('username', username, max_age=7200)
return response, render_template('index.html')
else:
return render_template('error.html')
return render_template('login.html') |