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)
以上是关于Flask 框架 重定向,捕获异常,钩子方法及使用jsonify在网页返回json数据的主要内容,如果未能解决你的问题,请参考以下文章
三十python之Flask框架视图:返回状态码重定向状态保持请求钩子