字段和多部分表单¶
领域¶
-
class
urllib3.fields.
RequestField
(name, data, filename=None, headers=None, header_formatter=<function format_header_param_html5>)¶ 基类:
object
请求正文参数的数据容器。
- 参数
name -- 此请求字段的名称。必须是Unicode。
data -- 数据/值体。
filename -- 请求字段的可选文件名。必须是Unicode。
headers -- 一个可选的类似dict的头对象,最初用于字段。
header_formatter -- 用于编码和格式化标题的可选可调用文件。默认情况下,这是
format_header_param_html5()
.
-
classmethod
from_tuples
(fieldname, value, header_formatter=<function format_header_param_html5>)¶ A
RequestField
旧样式元组参数的工厂。支撑结构
RequestField
从键/值字符串和键/文件元组的参数。filetuple是一个(filename,data,mime type)元组,其中mime类型是可选的。例如::'foo': 'bar', 'fakefile': ('foofile.txt', 'contents of foofile'), 'realfile': ('barfile.txt', open('realfile').read()), 'typedfile': ('bazfile.bin', open('bazfile').read(), 'image/jpeg'), 'nonamefile': 'contents of nonamefile field',
字段名和文件名必须是Unicode。
-
make_multipart
(content_disposition=None, content_type=None, content_location=None)¶ 将此请求字段设置为多部分请求字段。
此方法重写请求参数的“内容部署”、“内容类型”和“内容位置”头。
- 参数
content_type -- 请求正文的“内容类型”。
content_location -- 请求正文的“内容位置”。
-
render_headers
()¶ 呈现此请求字段的标题。
-
urllib3.fields.
format_header_param
(name, value)¶ helper函数使用html5策略格式化和引用单个头参数。
对于可能包含非ascii值(如文件名)的头参数特别有用。接下来是 HTML5 Working Draft Section 4.10.22.7 与curl和现代浏览器的行为相匹配。
- 参数
name -- 参数的名称,字符串应仅为ascii。
value -- 参数的值,提供为
bytes
或 str '.
- 雷特
一个Unicode字符串,去掉了麻烦的字符。
-
urllib3.fields.
format_header_param_html5
(name, value)¶ helper函数使用html5策略格式化和引用单个头参数。
对于可能包含非ascii值(如文件名)的头参数特别有用。接下来是 HTML5 Working Draft Section 4.10.22.7 与curl和现代浏览器的行为相匹配。
- 参数
name -- 参数的名称,字符串应仅为ascii。
value -- 参数的值,提供为
bytes
或 str '.
- 雷特
一个Unicode字符串,去掉了麻烦的字符。
-
urllib3.fields.
format_header_param_rfc2231
(name, value)¶ helper函数使用rfc 2231中定义的策略格式化和引用单个头参数。
对于可能包含非ascii值(如文件名)的头参数特别有用。遵循RFC 2388第4.4节。
- 参数
name -- 参数的名称,字符串应仅为ascii。
value -- 参数的值,提供为
bytes
或 str '.
- 雷特
RFC-2231格式的Unicode字符串。
多部分形式¶
-
urllib3.
encode_multipart_formdata
(fields, boundary=None)¶ 编一本字典
fields
使用多部分/表单数据mime格式。- 参数
fields -- 字段字典或(键,
RequestField
)boundary -- 如果未指定,则将使用
urllib3.filepost.choose_boundary()
.
-
urllib3.filepost.
choose_boundary
()¶ 我们令人难堪的简单替代美托尔。选择边界。
-
urllib3.filepost.
iter_field_objects
(fields)¶ 在字段上迭代。
支持(k,v)元组和dict的列表,以及
RequestField
.