更新ing!!读书(HTTP和Java)笔记整理

《图解HTTP》——上野宣

  • 1.7URI和URL:URI用字符串标识某一互联网资源,而URL表示资源的地点(互联网上所处的位置)。可见URL是URI的子集。
  • 2.8
    • HTTP是无状态协议,它不对之前发生过的请求和响应的状态进行管理。也就是说,无法根据之前的状态进行本次的请求处理;
    • Cookie会根据从服务器端发送的响应报文内的一个叫做Set-Cookie的首部字段信息,通知客户端保存Cookie。当下次客户端再往该服务器发送请求时,客户端会自动在请求报文中加入Cookie值后发送出去。
  • 3.3编码提升传输速率
    • 通常,报文主体等于实体主体。只有当传输中进行编码操作时,实体主体的内容发生变化,才导致它和报文主体产生差异。
    • 这种把实体主体分块的功能称为分块传输编码(Chunked Transfer Coding)。
  • 3.4 发送多种数据的多部分对象集合
    • MIME(Multipurpose Internet Mail Extensions,多用途因特网邮件扩展)机制
  • 3.6 内容协商返回最合适的内容
    • 当浏览器的默认语言为英语或中文,访问相同URI的Web页面时,则会显示对应的英语版或中文版的Web页面。这样的机制称为内容协商(Content Negotiation)。
    • 内容协商机制是指客户端和服务器端就响应的资源内容进行交涉,然后提供给客户端最为适合的资源。内容协商会以响应资源的语言、字符集、编码方式等作为判断的基准。
  • 4.3 3XX重定向
    • 永久性重定向。该状态码表示请求的资源已被分配了新的URI,以后应使用资源现在所指的URI。
    • 当301、302、303响应状态码返回时,几乎所有的浏览器都会把POST改成GET,并删除请求报文内的主体,之后请求会自动再次发送。301、302标准是禁止将POST方法改变成GET方法的,但实际使用时大家都会这么做。
  • 4.4 4XX客户端错误
    • 404:该状态码表明服务器上无法找到请求的资源
  • 5.2 通信数据转发程序:代理、网关、隧道
    • 用于通信数据转发的应用程序,例如代理、网关和隧道
    • 使用代理服务器的理由有:利用缓存.使用代理服务器的理由有:利用缓存技术(稍后讲解)减少网络带宽的流量,组织内部针对特定网站的访问控制,以获取访问日志为主要目的,等等。
    • 网关的工作机制和代理十分相似。而网关能使通信线路上的服务器提供非HTTP协议服务。
  • 5.3 保存资源的缓存
    • 缓存是指代理服务器或客户端本地磁盘内保存的资源副本。利用缓存可减少对源服务器的访问,因此也就节省了通信流量和通信时间。
    • 缓存服务器的优势在于利用缓存可避免多次从源服务器转发资源。因此客户端可就近从缓存服务器上获取资源,而源服务器也不必多次处理相同的请求了。
  • 6.2HTTP首部字段
    • 使用首部字段是为了给浏览器和服务器提供报文主体大小,所使用的语言、认证信息等内容。
    • HTTP首部字段根据实际用途被分为了四种类型。
《程序是怎样跑起来的》——矢泽久雄 《疯狂Java讲义(第2版)》——李刚编著 《疯狂Java:突破程序员基本功的16课(修订版)》——李刚

    推荐阅读