企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
对于 Web 应用,与客户端发送给服务器的数据交互至关重要。在 Flask 中由全局的 request 对象来提供这些信息。 如果要获取当前的请求信息,需要导入从 `flask` 导入 `request` ``` from flask import request ``` request 相关属性或方法,加粗需要经常使用。 | 属性 | 含义 | | --- | --- | | **method** | 请求方法,比如:POST、GET、PUT、DELETE。 | | **headers** | 请求头,字典类型。 | | **cookies** | 请求的cookies,类型是dict。 | | **values** | CombinedMultiDict,内容是`form`和`args`。  可以使用values替代form和args。 | | **data** | 包含了请求的数据,并转换为字符串,除非是一个Flask无法处理的mimetype。 | | **files** | MultiDict,带有通过POST或PUT请求上传的文件。 | | **get_json(force=False, silent=False, cache=True)** | 如果`mimetype`是`application/json`,直接获取JSON数据 | | json | 如果`mimetype`是`application/json`,这个参数将会解析JSON数据,如果不是则返回None。可以使用这个替代 get_json() 方法。 | | form | 一个从 POST 和 PUT 请求解析的 MultiDict(一键多值字典)。 | | args | MultiDict,要操作 URL (如 ?key=value )中提交的参数可以使用 args 属性:`searchword = request.args.get('key', '') ` | | path | 获取当前的url路径 | | script_root | 当前url路径的上一级路径 | | base_url | 获取域名与请求文件路径:http://www.dear521.com/index.html | | url | 获取完整路径:http://www.dear521.com/index.html?id=1&type=3 | | url_root | 获取域名:http://www.dear521.com/ | | environ | WSGI隐含的环境配置。 | | stream | 在可知的 mimetype下,如果进来的表单数据无法解码,会没有任何改动的保存到这个 stream 以供使用。很多时候,当请求的数据转换为string时,使用`data`是最好的方式。这个stream只返回数据一次。 | | max_content_length | 只读,返回`MAX_CONTENT_LENGTH`的配置键。 | | blueprint | 蓝图名字。 | | module | 如果请求是发送到一个实际的模块,则该参数返回当前模块的名称。这是弃用的功能,使用`blueprints`替代。| | endpoint | endpoint匹配请求,这个与`view_args`相结合,可是用于重构相同或修改URL。当匹配的时候发生异常,会返回None。 | | routing_exception = None | 如果匹配URL失败,这个异常将会/已经抛出作为请求处理的一部分。这通常用于`NotFound`异常或类似的情况。 | | is_xhr | 如果请求是一个来自`JavaScript XMLHttpRequest`的触发,则返回`True`,这个只工作在支持`X-Requested-With`头的库并且设置了`XMLHttpRequest`。 | | url_rule = None | 内部规则匹配请求的URL。这可用于在URL之前/之后检查方法是否允`(request.url_rule.methods)` 等等。  默认情况下,在处理请求函数中写下  `print('request.url_rule.methods', request.url_rule.methods)`  会打印: `request.url_rule.methods {‘GET’, ‘OPTIONS’, ‘HEAD’}` | | view_args = None | 一个匹配请求的view参数的字典,当匹配的时候发生异常,会返回None。 | |on_json_loading_failed(e)| |