接着上一篇,继续翻译
对应的是原文档的 21.6.1 Request Objects
官方源文档地址:https://docs.python.org/3.5/library/urllib.request.html#request-objects
——开始翻译—-
Request 对象
下面的方法描述了Request的公共接口,所以他们都可以在子类中被覆盖。它还定义了一些可以使用客户端检查解析请求的公共属性。
Request.full_url
将原始URL传递给构造函数。
在3.4版本中改变。
Request.full_url属性包含setter,getter和deleter。得到 full_url将返回原始请求URL的片段,如果原始请求URL的片段存在的话。
Request.type
URL体系(不好翻啊。。)
Request.host
URL主机,但也可能包含一个冒号。
Request.origin_req_host
发出请求的原始主机,没有port
Request.selector
URL路径。如果 Request使用一个代理,当它传递给代理后,选择器将会使完整的URL。
Request.data
请求的实体,如果没有指定的话就是None。
3.4版本的变化:改变 Request.data的值,当以前被设置或计算时,现在在头删除“Content-Length”。
Request.unverifiable
布尔值,指示是否由RFC 2965定义的请求是无法核实的。
Request.method
使用HTTP请求方法。默认情况下它的值为 None,这意味着 get_method()将使用普通的计算方法。它的值可以被设置(因此覆盖默认的计算 get_method())通过提供一个默认值设置它在类级别 Request子类,或者通过一个值经由构造函数构造。
在3.3版本中新出现。
3.4版本的变化:现在可以设置一个默认的值在子类;以前它只能通过构造函数参数设置。
Request.get_method()
返回一个字符串显示HTTP请求的方法。如果 Request.method不是 None,返回它值,否则返回 ‘GET’。如果 Request.data是 None,则返回 ‘POST’。这是唯一有意义的HTTP请求。
3.3版本的变化:get_method是Request.method的新形式
Request.add_header(key, val)
添加另一个请求头。头目前忽略所有处理程序除了HTTP处理程序,他们被添加到标题发送到服务器的列表。注意,不能有多个具有相同名称的标题,以及后来的调用将会覆盖之前的电话,以防碰撞的关键。目前,这是没有损失的HTTP功能,因为所有标题的含义使用时不止一次有一个(特殊)的方式获得相同的功能使用只有一个头。
Request.add_unredirected_header(key, header)
添加一个标题,将不会被添加到一个重定向请求。
Request.has_header(header)
返回实例是否有指定的标题(检查定期和unredirected)。
Request.remove_header(header)
删除叫头从请求实例(从常规和unredirected头)。
新的3.4版本中。
Request.get_full_url()
在构造函数中返回给定的URL。
在3.4版本中改变。
返回 Request.full_url
Request.set_proxy(host, type)
准备连接到代理服务器的请求。主机和类型将取代那些实例,实例的选择器将在构造函数中给出的原始URL。
Request.get_header(header_name, default=None)
返回的给定的头的值。如果头不存在,返回默认值。
Request.header_items()
返回一个元组的列表(header_name header_value)请求头。
3.4版本的变化:
请求方法add_data has_data,get_data get_type,get_host,get_selector get_origin_req_host和is_unverifiable弃用,因为3.3已被移除。
—–翻到这里。。兴趣一来,百度了一下Python 官方文档中文版。。发现已经有前人翻译过了。
我还傻乎乎的翻译。。唉。。浪费时间。。给一个网址
http://python.usyiyi.cn/translate/python_352/library/index.html—–