• 图解HTTP(2)


    第2章 简单的HTTP协议

    1.HTTP协议在客户端和服务端之间的通信

    客户端:请求访问文本或图像等资源的一端。
    服务器端:提供资源响应的一端。

    注意:就一条通信路线来说,服务器端和客户端的角色是确定的,而用HTTP协议能够明确区分哪端是客户端,哪端是服务器端。

    2.通过请求和响应的交换达成通信

    过程:请求从客户端出发,最后服务器端响应该请求并返回。

    GET:请求访问服务的类型 ;

    /index.htm:请求访问的资源对象;

    HTTP/1.1:HTTP的版本号,用来提示客户端使用的HTTP协议功能;

    请求访问hackr.jp主机的/index.htm页面资源。

    HTTP/1.1:HTTP版本号

    200:状态码(status code)

    Date:创建响应的日期时间

    <html>...</html>:资源实体的主体

    3.HTTP是不保存状态的协议

    为了更快的处理大量事物,确保协议的可伸缩性,协议本身并不保留之前一切的请求或响应报文的信息。

    Cookie:可记录状态,后面会讲到。

    4.告知服务器意图的HTTP方法

    [1] GET 获取资源

    GET方法用来请求访问已被URI识别的资源。指定的资源经服务器端解析后返回相应内容。

    [2] POST 传输实体主体

    POST与GET都可以用来传输实体的主体。但POST的主要目的并不是获取相应的主体内容。

    [3] PUT 传输文件

    PUT方法用来传输文件。在请求报文的主体中包含文件内容,然后保存到请求URI指定的位置。

    [4] HEAD 获得报文首部

    HEAD方法和GET方法一样,知识不返回报文主体部分。用于确认URI的有效性及资源更新的日期时间等。

    [5] DELETE 删除文件

    DELETE方法按请求URI删除指定的资源。

    [6] OPTIONS 询问支持的方法

    OPTIONS方法用来查询针对请求URI指定的资源支持的方法。

    [7] TRACE 追踪路径

    TRACE方法是让Web服务器端将之前的请求通信环回给客户端的方法。

    发送请求时,在Max-Forwards首部字段中填入数值,每经过一个服务器端就将该数字减1,当数值刚好减到0时,就停止继续传输。

    [8] CONNECT 要求用隧道协议连接代理

    CONNECT方法要求在与代理服务器通信时建立隧道,实现用隧道协议进行TCP通信。主要使用SSL和TSL协议把通信内容加密后经网络隧道传输。

    CONNECT格式:CONNECT 代理服务器名:端口号 HTTP版本

    5. 使用方法下达命令

    方法的命令:向请求URI指定的资源发送请求报文

    HTTP/1.0和HTTP/1.1支持的方法

    6.持久接连节省通信量

    在HTTP协议的初始版本中,每进行一次HTTP通信就要断开一次TCP连接。

    但是在之后,一个HTML页面包含图片使得通信量剧集增加。

    持久连接:只要任意一端没有明确提出断开连接,则保持TCP连接状态。

  • 相关阅读:
    在scrapy的spiders文件中设置请求时间间隔
    Python中map和reduce函数
    正则表达式
    eslint下的rules一些规则(转:备用)
    谷歌云设置xshell登录
    (过期)活动赠送的国外云服务器VPS【速度极慢,适合小白练手】
    关于服务器的那些事~~~
    call()和appy()的区别及常用场景
    javascript中使用this关键字的大总结
    懵懵懂懂、迷迷糊糊
  • 原文地址:https://www.cnblogs.com/implanck/p/12247241.html
Copyright © 2020-2023  润新知