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及

猜你喜欢

转载自www.cnblogs.com/wjohh/p/10283415.html
今日推荐