的步骤如下:
from flask import Flask, render_template, request, make_response
import hashlib
app = Flask(__name__)
@app.route('/')
def index():
return render_template('login.html')
@app.route('/login', methods=['POST'])
def login():
username = request.form.get('username')
password = request.form.get('password')
# 进行登录验证
if username == 'admin' and password == 'admin':
# 生成加密的Cookie值
token = hashlib.sha256(username.encode()).hexdigest()
# 创建响应对象
resp = make_response(render_template('dashboard.html', username=username))
# 设置Cookie
resp.set_cookie('token', token)
return resp
return 'Invalid username or password'
@app.route('/dashboard')
def dashboard():
# 获取Cookie中的token值
token = request.cookies.get('token')
# 验证token,判断用户是否已登录
if token == hashlib.sha256('admin'.encode()).hexdigest():
return render_template('dashboard.html', username='admin')
return 'Unauthorized'
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<h2>Login</h2>
<form action="/login" method="post">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title>Dashboard</title>
</head>
<body>
<h2>Welcome, {{ username }}</h2>
<p>This is your dashboard.</p>
</body>
</html>
以上代码实现了一个简单的登录页面,使用Flask作为Web框架,通过Cookie进行用户登录验证。用户输入用户名和密码后,提交表单会触发/login路由的处理函数。处理函数会对用户名和密码进行验证,如果验证通过,则生成一个加密的token作为Cookie的值,并将其设置到响应对象中。登录成功后,用户会被重定向到/dashboard路由,显示仪表盘页面,并通过模板引擎将用户名展示在页面上。在/dashboard页面的处理函数中,会从Cookie中获取token值,并进行验证,以确认用户是否已登录。
腾讯云相关产品推荐:
请注意,上述产品仅作为示例,您可以根据实际需求选择适合的产品和服务。
领取专属 10元无门槛券
手把手带您无忧上云