您的位置:首页 > 教育 > 锐评 > 重大新闻事件2023_北京简网科技有限公司_一个完整的策划案范文_怎么做百度推广平台

重大新闻事件2023_北京简网科技有限公司_一个完整的策划案范文_怎么做百度推广平台

2025/8/28 7:52:39 来源:https://blog.csdn.net/2401_88743143/article/details/146267602  浏览:    关键词:重大新闻事件2023_北京简网科技有限公司_一个完整的策划案范文_怎么做百度推广平台
重大新闻事件2023_北京简网科技有限公司_一个完整的策划案范文_怎么做百度推广平台

在 Flask 中,视图函数可以返回多种类型的响应,例如字符串、HTML、JSON、文件等。Flask 提供了 make_response 函数,用于生成和自定义 HTTP 响应。

2.1 默认响应

默认情况下,视图函数返回的字符串会被 Flask 包装成一个 HTTP 响应,状态码为 200 OK,内容类型为 text/html

@app.route('/')
def home():return "Hello, World!"  # 默认状态码为 200,内容类型为 text/html

2.2 使用 make_response 自定义响应

make_response 函数允许你自定义响应的状态码、头部、内容类型等。

2.2.1 基本用法
from flask import Flask, make_responseapp = Flask(__name__)@app.route('/custom')
def custom_response():response = make_response("This is a custom response", 201)  # 状态码为 201response.headers['Content-Type'] = 'text/plain'return response
  • make_response 的第一个参数是响应内容,第二个参数是状态码。

  • 可以通过 response.headers 设置响应头部。

2.2.2 设置 Cookies
@app.route('/set-cookie')
def set_cookie():response = make_response("Cookie set!")response.set_cookie('username', 'john')return response
  • set_cookie 方法用于设置 Cookie。

2.2.3 返回 JSON 数据

python

复制

from flask import jsonify@app.route('/json')
def json_response():data = {'name': 'John', 'age': 30}return jsonify(data)  # 返回 JSON 格式的响应
  • jsonify 函数会将 Python 字典转换为 JSON 格式的响应。

2.2.4 返回文件
from flask import send_file@app.route('/download')
def download_file():return send_file('path/to/file.txt', as_attachment=True)
  • send_file 函数用于发送文件,as_attachment=True 表示文件作为附件下载。


3. 请求和响应的完整示例

以下是一个完整的示例,展示如何处理请求和生成响应:

python

复制

from flask import Flask, request, make_response, jsonifyapp = Flask(__name__)@app.route('/greet', methods=['GET', 'POST'])
def greet():if request.method == 'GET':name = request.args.get('name', 'Guest')elif request.method == 'POST':name = request.form.get('name', 'Guest')response = make_response(f"Hello, {name}!", 200)response.set_cookie('username', name)return response@app.route('/api/data')
def api_data():data = {'status': 'success', 'message': 'Hello, World!'}return jsonify(data)if __name__ == '__main__':app.run(debug=True)
  • 访问 /greet?name=John 会返回 "Hello, John!",并设置一个名为 username 的 Cookie。

  • 访问 /api/data 会返回 JSON 格式的响应。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com