flask-响应-5种方式

需求:处理不同场景返回不同的响应信息

1、响应返回模版

使用render_template()

 1 from flask import Flask,render_template
 2 app = Flask(__name__)
 3 @app.route('/')
 4 def hello():
 5     #直接返回响应字符您好,返回给浏览器
 6     #return '您好'
 7     #返回模版语言,然后再解析为html语言
 8     return render_template('index.html')
 9 if __name__ == '__main__':
10     app.run()
View Code

 

 

 

 

 

 

2、重定向

只需要更改上边代码第八行位置为如下代码

1 #3、重定向到百度,redirect表示重定向,参数是location
2     #应用场景:当项目文件或者url地址出现变化的时候
3     return redirect('http://baidu.com')

3、json 

使用jsonify方法,不仅会把数据转成json字符串,还会把响应的类型改为application/json;参数为python的数据类型,例如字典

1 #4、json json定义-本质是基于键值对形式的字符串
2     # 4.1 使用flask内置的函数jsonify
3     s = {'id':'123456'}
4     return jsonify(s)
5     # 4.2 使用json模块提供的函数 dumps() 把字典转为字符串
6     json_data = json.dumps(s)
7     return json_data

 

4、自定义状态码和响应头 两种方式

1 #5、返回元祖 形式(response,status,headers)下边两行都可以
2     return 'hello', 200 ,{'id':'who are you'}
3     return ('hello', 200, {'id': 'who are you'})
4     #6、make_response
5     response = make_reponse('make_res测试')
6     response.headers['id'] = 'who'
7     response.status = '404 noy found'
8     return response

 

posted on 2023-03-24 14:55  小呆呆yy  阅读(139)  评论(0编辑  收藏  举报