flask response跳转页面

flask返回跳转页面有两种方式

1、redirect()

复制代码
from flask import Flask
from flask import make_response, request, render_template,redirect,url_for
import setting,json

app = Flask(__name__)
app.config.from_object(setting)
@app.route('/')
def index():
return render_template("index.html")

users=[]
@app.route('/register',methods = ["Post","Get"])
def register():
if request.method == "POST":
username = request.form.get("username")
password = request.form.get("password")
repassword = request.form.get("repassword")
if password == repassword:
user = {"username":username,"password":password}
users.append(user)
print(users)
return redirect('/') #两次响应 1、302 + location:/ 2、根据location返回需要的值
else:
return '密码不一致'
else:
return render_template("register.html")
if __name__ == '__main__':
app.run(host='127.0.0.1', port=5000)
复制代码

2、url_for() 通过endpoing在route路由中设置别名来进行跳转

复制代码
from flask import Flask
from flask import make_response, request, render_template,redirect,url_for
import setting,json

app = Flask(__name__)
app.config.from_object(setting)

@app.route('/',endpoint='index')
def index():
    return render_template("index.html")

users=[]
@app.route('/register',methods = ["Post","Get"])
def register():
    if request.method == "POST":
        username = request.form.get("username")
        password = request.form.get("password")
        repassword = request.form.get("repassword")
        if password == repassword:
            user = {"username":username,"password":password}
            users.append(user)
            print(users)
            return redirect(url_for('index')) # url_for
        else:
            return '密码不一致'
    else:
        return render_template("register.html")

@app.route('/test')
def test():
    url = url_for('index')  #路径反向解析
    print(url) #打印出来是'/'
    return 'test'
if __name__ == '__main__':
    app.run(host='127.0.0.1', port=5000)
复制代码

 

posted @   fat_girl_spring  阅读(542)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
历史上的今天:
2020-09-08 Prometheus监控Mongodb副本集
点击右上角即可分享
微信分享提示