你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

HttpRequest 类

表示 HTTP 请求。

可以在不带查询参数的情况下提供 URL,以便稍后使用“format_parameters”添加。

继承
builtins.object
HttpRequest

构造函数

HttpRequest(method: str, url: str, headers: Mapping[str, str] | None = None, files: Any | None = None, data: bytes | str | Dict[str, str | int] | None = None)

参数

method
str
必需

HTTP 方法 (GET、HEAD 等 )

url
str
必需

至少完成方案/主机/路径

headers
dict[str,str]
默认值: None

HTTP 头

files
dict[str, tuple[str, IO, str, dict]] 或 dict[str, IO]
默认值: None

用于多部分编码上传的 'name': file-like-objects (或 {'name': file-tuple}) 字典。 file-tuple 可以是 2 元组 ('filename', fileobj)、3 元组 ('filename', fileobj, 'content_type') 或 4 元组 ('filename', fileobj, 'content_type', custom_headers),其中 'content_type' 是定义给定文件的内容类型的字符串,以及 custom_headers 包含要为文件添加的其他标头的类似 dict 的对象。

data
bytesdict (<xref:for form>)
默认值: None

要发送的正文。

方法

format_parameters

将参数格式化为有效的查询字符串。 假定所有参数都已引用为有效的 URL 字符串。

prepare_multipart_body

将根据多部分信息准备此请求的正文。

此调用假定on_request策略已在其正确的上下文中应用 (同步/异步)

如果从未调用“set_multipart_mixed”,则不执行任何调用。

serialize

使用 application/http 规范序列化此请求。

set_bytes_body

将泛型字节设置为请求的正文。

将设置内容长度。

set_formdata_body

将表单编码的数据设置为请求的正文。

set_json_body

将 JSON 友好对象设置为请求的正文。

set_multipart_mixed

设置多部分/混合的部分。

目前仅支持的参数是 HttpRequest 对象。

边界是可选的,如果未提供边界,则会生成一个边界。 请注意,不会对边界进行验证,这被视为足够高级,因此你知道如何遵守 RFC1341 7.2.1 并提供正确的边界。

任何其他 kwargs 都将传递到每个请求策略配置的管道上下文中。

set_streamed_data_body

设置可流数据主体。

set_text_body

将文本设置为请求正文。

set_xml_body

将 XML 元素树设置为请求的正文。

format_parameters

将参数格式化为有效的查询字符串。 假定所有参数都已引用为有效的 URL 字符串。

format_parameters(params: Dict[str, str]) -> None

参数

params
dict
必需

参数字典。

prepare_multipart_body

将根据多部分信息准备此请求的正文。

此调用假定on_request策略已在其正确的上下文中应用 (同步/异步)

如果从未调用“set_multipart_mixed”,则不执行任何调用。

prepare_multipart_body(content_index: int = 0) -> int

参数

content_index
int
默认值: 0

批处理消息中部件的当前索引。

返回

添加此请求中所有部分后更新的索引。

返回类型

int

serialize

使用 application/http 规范序列化此请求。

serialize() -> bytes

返回

序列化为 HTTP 低级别消息的请求(以字节为单位)。

返回类型

set_bytes_body

将泛型字节设置为请求的正文。

将设置内容长度。

set_bytes_body(data: bytes) -> None

参数

data
bytes
必需

请求字段数据。

set_formdata_body

将表单编码的数据设置为请求的正文。

set_formdata_body(data: Dict[str, str] | None = None) -> None

参数

data
dict
默认值: None

请求字段数据。

set_json_body

将 JSON 友好对象设置为请求的正文。

set_json_body(data: Any) -> None

参数

data
dict
必需

JSON 可序列化对象

set_multipart_mixed

设置多部分/混合的部分。

目前仅支持的参数是 HttpRequest 对象。

边界是可选的,如果未提供边界,则会生成一个边界。 请注意,不会对边界进行验证,这被视为足够高级,因此你知道如何遵守 RFC1341 7.2.1 并提供正确的边界。

任何其他 kwargs 都将传递到每个请求策略配置的管道上下文中。

set_multipart_mixed(*requests: HttpRequest, policies: List[SansIOHTTPPolicy[HTTPRequestType, HTTPResponseType]] | None = None, boundary: str | None = None, **kwargs: Any) -> None

参数

requests
HttpRequest
必需

要添加到多部分/混合的请求

policies
list[SansIOHTTPPolicy]

SansIOPolicy 在准备时申请

boundary
str

可选边界

set_streamed_data_body

设置可流数据主体。

set_streamed_data_body(data: Any) -> None

参数

data
<xref:stream> 或 <xref:generator> 或 <xref:asyncgenerator>
必需

请求字段数据。

set_text_body

将文本设置为请求正文。

set_text_body(data: str) -> None

参数

data
str
必需

要作为正文发送的文本。

set_xml_body

将 XML 元素树设置为请求的正文。

set_xml_body(data: Any) -> None

参数

data
<xref:<xref:XML node>>
必需

请求字段数据。

属性

body

数据的别名。

返回

请求的正文。

返回类型

str,
dict,

query

作为 dict 的请求的查询参数。

返回

作为 dict 的请求的查询参数。

返回类型