8 Flask 请求与响应实战
Flask 是一个轻量级的 Python web 框架,处理 HTTP 请求和响应是其核心功能之一。本节将通过实例帮助你理解如何在 Flask 中处理请求和发送响应。
请求 (Request)
在 Flask 中,request
对象用于获取客户端发送的请求信息,如 URL、表单数据和请求头等。
获取请求数据
Flask 提供了多种方法来获取请求中的数据。
获取查询参数
查询参数通常包含在 URL 中,例如 /search?q=flask
。
1 | from flask import Flask, request |
在这个例子中,当访问 /search?q=flask
时,Flask 会返回 You searched for: flask
。
获取表单数据
使用 POST 方法提交的表单数据可以通过 request.form
访问。
1 | from flask import Flask, request |
在 HTML 表单提交时,Flask 会提取 username
字段的值。
获取请求头
请求头包含有关请求的元数据,如用户代理、内容类型等。
1 |
|
使用浏览器访问 /headers
可以查看你当前的用户代理。
响应 (Response)
Flask 的 response
对象用于构建服务器端响应。
基本响应
最简单的响应是直接返回一个字符串。
1 |
|
使用 Response
对象
你可以创建一个更复杂的响应对象,通过 Flask 的 Response
类。
1 | from flask import Response |
这里我们返回的是 JSON 格式的数据,并指定了 mimetype
。
设置响应头
你可以通过 response.headers
设置自定义的响应头。
1 |
|
状态码
你可以通过返回一个元组来指定状态码和响应内容。
1 |
|
处理错误响应
你可以使用 abort
函数来返回错误代码。
1 | from flask import abort |
通过这些基本的请求和响应操作,你可以开始处理客户端的请求并返回定制的响应。在后续的学习中,可以结合更复杂的路由和数据处理,进一步提升你对 Flask 的掌握。
8 Flask 请求与响应实战