Flask 框架 重定向,捕获异常,钩子方法及使用jsonify在网页返回json数据

Posted SmileOHH

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask 框架 重定向,捕获异常,钩子方法及使用jsonify在网页返回json数据相关的知识,希望对你有一定的参考价值。

Flask 框架中常用到重定向方法来实现路由的跳转 ,路由跳转又分为站内跳转和站外跳转

 常用的站内跳转方法为url_for  而常用的站外跳转为redirect

 在这里提示一下: 在使用两种方法是须调用相对应的包:

redirect对应的为redirect包  而url_for对应url_for
例:

具体代码为:

捕获异常:即在服务器没有相应的时候用来进行友好提示,提高用户体验

具体代码为:

 

 

钩子方法:分为第一次请求之前,每一次请求之前和请求之后在后台返回的数据

jsonify:在页面返回json数据

 

# -*- encoding: utf-8 -*-

# 导包,导入重定向模块,url_for是简易寻找地址跳转,redirect是站外跳转 jsonify转化为json格式得数据
from flask import Flask, redirect, url_for,jsonify

# 建立flask对象
app = Flask(__name__)

# 开启debug模式
# 从配置文件里来加载配置
app.config.from_pyfile(\'config.ini\')

# 使用flask路由 器  制定网址和控制器定义得参数同步
@app.route(\'++\')
def index(): 
    return "你好世界 你好PYTHON"


# 使用url_for方法来实现简易得站内跳转 redirect是站外跳转
# 参数指定路由方法名称
@app.route(\'/2\')
def reurl_in():
    return redirect(url_for(\'index\'))

# 使用程序入口讲flask应用启动,port参数用来调整端口号,flask,默认端口号是5000
if __name__ == "__main__":
    app.run()

# 使用jsonify模块来让网页直接显示json数据
@app.route(\'/json\', methods=[\'POST\'])
def re_json():
    # 定义好数据格式
    json_dict = {\'id\': 10, \'title\': "flask应用", \'content\': \'flask得格式化\'}
    # 使用jsonify来将定义好得数据转化为json格式返回给前端
    return jsonify(json_dict)


# Flask统一对状态码捕获异常。用来进行友好提示,提高用户体验
@app.errorhandler(405)
def internal_server_error(e):
    return \'这个接口不能被GET请求,只能发送post请求\'


@app.errorhandler(404)
def internal1_server_error(e):
    return \'网页不存在\'

# 在第一次请求之前调用 首次
@app.before_first_request
def before_first_request():
    print("这是第一次请求之前调用的方法")


# 在每一次请求之前调用
@app.before_request
def before_request():
    print("每一次请求之前,调用这个方法")


# 在请求之后待用的方法,必须传响应参数,然后将响应内容返回
@app.after_request
def after_request(response):
    print("在请求之后调用这个方法")
    return response


# 在请求之后,调用服务器出现了错误信息,打印服务器出现了错误信息
@app.teardown_request 
def teardown_request(e):
    print("服务器出现的错误是:%s" % str(e))


# 使用程序入口讲flask应用启动,port参数用来调整端口号,flask,默认端口号是5000
if __name__ == "__main__":
    app.run(debug=True)
View Code及

 

以上是关于Flask 框架 重定向,捕获异常,钩子方法及使用jsonify在网页返回json数据的主要内容,如果未能解决你的问题,请参考以下文章

1关于Flask

三十python之Flask框架视图:返回状态码重定向状态保持请求钩子

Flask 学习-69.捕获异常钩子函数errorhandler

Flask框架钩子函数使用方式及应用场景分析

Flask url 重定向给出了意外的关键字参数异常

Flask框架学习整理——从零开始入门Flask