HTTP协议

  1. HTTP 协议:全称超文本传输协议,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协;

  2. HTTP是面向事务的应用层协议,它是万维网能够可靠地交换文件的重要基础。

    1、下面我们用HTTP/1.0更具体地说明在用户点击 http://www.xxx.com/ 后所发生的几个事件:

    ⑴、浏览器分析链接指向页面的URL;
    ⑵、浏览器向DNS请求解析出http://www.xxx.com/ 的IP地址
    ⑶、DNS服务器解析出某WEB服务器的IP地址为192.168.0.1;
    ⑷、浏览器与服务器建立TCP连接
    ⑸、浏览器发出取文件命令;
    ⑹、服务器www.xpu.edu.cn给出响应,把文件index.htm发给浏览器;
    ⑺、释放TCP连接;
    ⑻、浏览器显示index.htm中所有文本。

    浏览器下载文件时,可以设置只下载其中文本部分,若要下载图像或声音,可再分别点击这些图标,每一次就重复执行类似于上述的八个操作。HTTP使用TCP作为运输层协议,保证数据可靠传输,但HTTP协议本身是无连接的

    ​ HTTP是无状态的。服务器并不记得客户端曾访问过它,如果页面没有更新,客户每次得到的响应相同。这样做简化了服务器设计,使服务器更容易支持大量并发HTTP请求。
    在这里插入图片描述

  3. 什么是协议:一种约定,只有符合约定的才算合法数据。在网络中,计算机之间要相互遵守各种协议,只有这样网络上的数以万计的数据才不会显得非常混乱。

  4. HTTP 协议格式:

    • 请求头:描述请求或响应的基本信息;

在这里插入图片描述

  • 请求行:使用 key-value 形式更详细地说明报文;

在这里插入图片描述

  • 请求体:实际传输的数据,它不一定是纯文本,可以是图片、视频等二进制数据。
  1. 请求方法:

    • GET:获取资源
    • POST: 传输实体主体
    • PUT: 传输文件
    • HEAD: 获得报文首部
    • DELETE: 删除文件
    • OPTIONS: 访问支持的方法
    • TRACE: 追踪路径
    • CONNECT: 要求用隧道协议连接代理
    • LINK: 建立和资源之间的联系
  2. GET 和 POST的比较

    • GET:

      URL 里面的 query string 可以为空,也可以不为空 
      GET 请求的 body 一般是空的
      
    • POST:

         URL 里面的 query string 一般是空的
         POST 请求的 body 一般不为空
         不幂等
      
  3. Cookie是这样工作的,当用户张三浏览某个使用cookie的网站时,该网站的服务器就为张三产生一个唯一的识别码。并以此作为索引在服务器的后端数据库中产生一个项目。接着在给张三的HTTP响应报文中添加一个叫做set-cookie的首部行。当张三收到这个响应时,浏览器就在它管理的特定cookie文件夹中添加一行,其中包括这个服务器的主机名和识别码。当张三继续浏览这个网站时,每发送一个HTTP请求报文,其浏览器就从cookie文件中取出该网站给出的识别码,并放到HTTP请求报文的cookie首部行中。于是该网站就能跟踪用户张三了,张三对服务器来说就是识别码。

    Cookie的使用简化了购物过程,但也受到争议。

    可以设置拒绝cookie。

  4. 状态码:

    分类分类描述
    1xx信息,服务器收到请求,需要请求者继续执行操作
    2xx成功,操作被成功接收并处理
    3xx重定向,需要进一步的操作以完成请求
    4xx客户端错误,请求包含语法错误或无法完成请求
    5xx服务器错误,服务器在处理请求的过程中发生了错误
  5. 常见状态码&含义

    200 - 请求成功,已经正常处理完毕
    301 - 请求永久重定向,转移到其它URL
    302 - 请求临时重定向
    304 - 请求被重定向到客户端本地缓存
    400 - 客户端请求存在语法错误
    401 - 客户端请求没有经过授权
    403 - 客户端的请求被服务器拒绝,一般为客户端没有访问权限
    404 - 客户端请求的URL在服务端不存在
    500 - 服务端永久错误
    
  6. HTTPS

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值