zoukankan      html  css  js  c++  java
  • 《图解HTTP》简单的HTTP协议

    一、HTTP协议用于客户端和服务器之间的通信

    二、通过请求和响应的交换达成通信

    1、请求报文的构成

    2、响应报文的构成

    三、HTTP是不保存状态的协议

      HTTP协议自身不具备保存之前发送过的请求或响应的功能,原因:更快速的处理大量事务

      为了实现保持状态功能,引入Cookie技术

    四、请求URI定位资源

      HTTP协议使用URI定位互联网上的资源。正是因为URI的特定功能,在互联网上任意位置的资源都能访问到。

    五、告知服务器意图的HTTP方法

      GET: 请求访问已被URI识别的资源,获取资源

      POST:传输实体的主体,主要目的并不是获取响应的主体内容

      PUT: 传输文件,向FTP协议上传一样(由于不带验证机制,一般不使用这个方法)

      HEAD:获取报文首部(通信状态),不返回报文主体部分,用于确认URI的有效性及资源更新的日期时间

      DELETE:用来删除文件(由于不带验证机制,一般不使用这个方法)

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

      TRACE:追踪路径,查询发送出去的请求是怎样被加工修改的(通过代理中转等一系列操作,不常用,容易引起攻击)

      CONNECT:与代理服务器通信时建立隧道,实现用隧道协议进行TCP通信。(主要使用SSL、TLS协议把通信内容加密后经网络隧道传输)

    六、使用方法下达命令

      方法的作用在于,可以指定请求的资源按期望产生某种行为

    七、持久连接省通信量

    1、持久连接

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

      持久连接:建立1次TCP连接后进行多次请求和响应的交互

      好处:减少重复建立连接的额外开销(web页面响应速度相应提高),减轻服务器端的负载

    2、管线化

      管线化技术能同时并行发送多个请求,不需要一个接着一个地等待响应

      管线化技术比持久连接还要快,请求数越多,时间差就越明显

    八、Cookies技术

      客户端发送没有Cookies信息的请求报文给服务器

      服务器发送生成Cookies信息的响应报文给客户端

      客户端自动保存发送带有Cookies信息的请求报文给服务器

  • 相关阅读:
    spring boot 2.1学习笔记【五】SpringBootTest单元测试及日志
    Java网络编程-UDP
    Java网络编程-TCP
    String的特性
    内存池的使用
    软件定时器的使用
    邮箱
    事件集
    线程优先级翻转
    临界区,互斥量与信号量
  • 原文地址:https://www.cnblogs.com/zhuxr/p/14136053.html
Copyright © 2011-2022 走看看