8-1<X11>openanything.xml HTTP web 服务

概览

  1. Para 2Simply stated, HTTP web services are programmatic ways of sending and receiving data from remote servers using the operations of HTTP directly.BR 简单地讲,HTTP web 服务是指直接使用 HTTP 操作从远程服务器按部就班地发送和接收数据。BR (./) 简单地讲,HTTP web 服务是指以编程的方式直接使用 HTTP 操作从远程服务器发送和接收数据。

  2. Para 3The main advantage of this approach is simplicity,...BR 利用这种方法的要点简单的,……BR (./) 这种方法的主要优点是简单,……

  3. 例11.1上, Para -2:在后面的几章里,我们将探索使用 HTTP <!> 数据发送和接收传输的 API…… (./) 进行

避免通过 HTTP 重复地获取数据

HTTP 特性

  1. 重定向, Para 3:……然后在 Location: 头部给出新地址BR (./) 然后在 Location: 头信息中给出新地址

  2. Last-Modified/If-Modified-Since, Para 1BR 通常服务器指导 <!> 你所请求的数据的最后修改时间 (./) 知道

  3. Last-Modified/If-Modified-Since, Para 2BR ……你可以告诉服务器你上一次获得的最后修改日期:在你的请求中发送 {X} 一个 If-Modified-Since 头信息……为什么 {X} 这一点有何进步呢?因为 {X} 当服务器发送状态编码 304 时,不再重新发送数据……

  4. Last-Modified/If-Modified-Since, Para 4BR 所有现代的浏览器都支持最近修改 {i} (last-modified)的数据检查。……服务器简单地返回 304: {i} Not Modified( 没有修改

  5. ETag/If-None-Match, Para 1BR ETag 是实现与最近修改数据检查同样的功能的另一种方法:没有变化时不重新下载数据。其工作原理 方式是:服务器发送你所请求的数据的同时,发送某种数据的 hash (在 ETag 头信息中 {i} 给出),hash 的确定完全取决于服务器。当第二次请求相同的数据时, {i} 你需要在 If-None-Match: 头信息中包含 ETag hash,……在第二次请求时,通过包含 ETag hash,你 {X} 告诉服务器……

  6. 压缩, Para 1When you talk about HTTP web services, you're almost always talking about moving XML back and forth over the wire. XML is text, and quite verbose text at that, and text generally compresses well.BR 当谈论 HTTP web 服务时,几乎总是会谈及在网络线路上传输的 XML。XML 是文本,而且还是相当冗长的文本,并且文本通常可以被很好地压缩。BR (./) 关于 HTTP web 服务的主题几乎总是会涉及在网络线路上传输的 XML。XML 是文本,而且还是相当冗长的文本,文本通常可以被很好地压缩。

调试 HTTP web 服务

  1. 例11.3, (1)...you can set the debugging flag on the HTTPConnection class that urllib uses internally to connect to the HTTP server. 你可以为 urllib 使用内部的 HTTPConnection 类设置调试标记来访问 HTTP 服务器BR (./) 你可以为 HTTPConnection 类(urllib 在内部使用它来访问 HTTP 服务器)设置调试标记

  2. 例11.3, (6):服务器也会告诉你响应请求的数据、一些有关服务器自身的信息, {i} 以及传给你的数据的内容类型。