• HTTP协议


    http的两类报文

    请求报文:

      请求行,请求头部,空白行,请求数据。

          

      请求方法:HTTP协议的请求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT。

      GET:使用GET方法时,请求参数和对应的值附加在URL后面,利用一个问号(“?”)代表URL的结尾与请求参数的开始,传递参数长度受限制。GET方式的请求一般不包含”请求内容”部分,请求数据以地址的形式表现在请求行。

      POST:POST方法将 请求参数封装在HTTP请求数据中,以名称/值的形式出现,可以传输大量数据,这样POST方式对传送的数据大小没有限制,而且也不会显示在URL中。

      HEAD:HEAD就像GET,只不过服务端接受到HEAD请求后只返回响应头,而不会发送响应内容。当我们只需要查看某个页面的状态的时候,使用HEAD是非常高效的,因为在传输的过程中省去了页面内容。

      请求头部

      请求头部由键值对组成

      请求头部通知服务器有关于客户端请求的信息,典型的请求头有:

      User-Agent:产生请求的浏览器类型。

      Accept:客户端可识别的内容类型列表。

      Host:请求的主机名,允许多个域名同处一个IP地址,即虚拟主机

      空白行 

      最后一个请求头之后是一个空行,发送回车符和换行符,通知服务器以下不再有请求头。

      请求数据

      请求数据用于post请求中,POST方法适用于需要客户填写表单的场合。与请求数据相关的最常使用的请求头是Content-Type和Content-Length。

    响应报文

      状态行,消息报头,响应正文。

      如下所示,HTTP响应的格式与请求的格式十分类似:

      <status-line>

      <headers>

      <blank line>

      [<response-body>]

      由上可以看出,在响应中唯一真正的区别在于第一行中用状态信息代替了请求信息。状态行(status line)通过提供一个状态码来说明所请求的资源情况。

      常见状态代码、状态描述的说明如下:

    • 200 OK:客户端请求成功。
    • 302 found:请求重定向
    • 400 Bad Request:客户端请求有语法错误,不能被服务器所理解。
    • 401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
    • 403 Forbidden:服务器收到请求,但是拒绝提供服务。
    • 404 Not Found:请求资源不存在,举个例子:输入了错误的URL。
    • 405-用来访问本页面的HTTP方法不被允许
    • 500 Internal Server Error:服务器发生不可预期的错误。
    • 503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常,举个例子:HTTP/1.1 200 OK(CRLF)。
    • 505 HTTP 505错误表示“HTTP版本不受支持”,当服务器不支持请求中所使用的HTTP协议版本时就回返回此错误,最为常见的是 HTTP/1.1。

      302解释:

      302状态码应用的典型场景是服务器页面路径的重新规划,

      比如一个portal页面,换了新的域名,但是老的域名地址还有很多用户在使用,这样可以对老域名配置302跳转到新域名地址,保证服务的延续。
      另外对于一些客户端预埋的Url链接,免不了老版本地址失效与更改,将老地址配置302跳转到新地址,这样就能够全面兼容所有客户端版本。 
       
      举个栗子:对302有一个感性全面认知,在浏览器输入taobao.com,进行抓包,如下图,访问taobao.com后,服务器吐回状态码302 Found,然后Locatioin字         段标识浏览器应该跳转到了www.taobao.com,从而打开了淘宝网站。

      对应于不同域名指向同一个地址的情况,大多是这么处理的。

  • 相关阅读:
    vmodel.lazy详解
    import Vue from 'vue'如何解释?
    ubuntu安装deb文件包
    vue安装
    多线程和多进程的区别
    SLH(Location Sensitive Hash)学习
    hadoop学习笔记(一)简介
    [转]关于协同过滤的好文章
    Linear Regression练习
    regularized 线性回归练习
  • 原文地址:https://www.cnblogs.com/x991788x/p/13543061.html
Copyright © 2020-2023  润新知