• HTTP请求与服务器响应流程


      1. HTTP 简介

        1.1定义

        1.2 请求/响应报文格式

        1.3请求方式--GET/POST     状态码

        1.4 响应状态

      2. HTTP请求,浏览器做了什么, 服务端处理解析过程

    1:HTTP简介

      1.1

      HTTP(HyperText Transfer Protocol,超文本传输协议)最早就是计算机与计算机之间沟通的一种标准协议,这 种协议限制了通讯内容的格式以及各项内容的含义。

      随着时代的发展,技术的变迁,这种协议现在广泛的应用在各种领域,也不仅仅局限于计算机与计算机之间,手 机、电视等各种智能设备很多时候都在使用这种协议通讯,所以一般现在称 HTTP 为端与端之间的通讯协议。

      Web 属于 B/S 架构的应用软件,在 B/S 架构中,浏览器与服务器沟通的协议就是 HTTP 协议,作为一个合格的 Web 开发者,了解 HTTP 协议中约定的内容是一门必修课。

      应用软件架构一般分为两类: B/S 架构:Browser(浏览器) ←→ Server(服务器),这种软件都是通过浏览器访问一个网站使用, 服务器提供数据存储等服务。 C/S 架构:Client(客户端) ←→ Server(服务器),这种软件通过安装一个软件到电脑,然后使用, 服务器提供数据存储等服务。

      1.2请求报文的格式

      请求行    ---》请求方式 请求路径 HTTP协议版本  (一般GET请求主观上都是去‘拿东西’,所以使用需要看情况)

      请求头    ---》客户端想要告诉服务端的一些额外信息

      空行

      请求体   ---》客户端想要发送给服务端的数据正文

        

      

       1.3请求的方式GET/POST    状态码

      根据HTTP标准,HTTP请求可以使用多种请求方法。

      HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法。

      HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。

    具体的请查看官方文档:

      http://www.runoob.com/http/http-methods.html

      http://www.w3school.com.cn/tags/html_ref_httpmethods.asp

     

       状态码:了解即可

      状态代码由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值。

      1xx:指示信息 —— 表示请求已接收,继续处理。

      2xx:成功 —— 表示请求已被成功接收、理解、接受。

      3xx:重定向 —— 要完成请求必须进行更进一步的操作。

      4xx:客户端错误 —— 请求有语法错误或请求无法实现。

      5xx:服务器端错误 —— 服务器未能实现合法的请求。

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

      200 OK:客户端请求成功。

      400 Bad Request:客户端请求有语法错误,不能被服务器所理解。

      401 Unauthorized:请求未经授权,这个状态代码必须和 WWW-Authenticate 报头域一起使用。

      403 Forbidden:服务器收到请求,但是拒绝提供服务。

      404 Not Found:请求资源不存在,举个例子:输入了错误的URL。

       500 Internal Server Error:服务器发生不可预期的错误。 503 Server Unavailable:服务器当前不能处理客户端的请求,一段时间后可能恢复正常。

    2. HTTP请求,浏览器做了什么, 服务端处理解析过程

      下面这张图我觉得比任何文字描述都清晰了,我这里就不再做详细介绍了,此图根据不同的操作系统,会有不同的概念,此为:Windows下的Apache+PHP环境。

         结语:以上过程仅是个人理解,或许有错误的地方,也或者有还未理解到的层面,如果看到有错误或者有所指点的还希望不吝赐教指正!抱拳,感谢!O(∩_∩)O哈哈~附上个人博客:https://dobinspark.com.cn/

      

  • 相关阅读:
    Oracle中有大量的sniped会话
    Error 1130: Host '127.0.0.1' is not allowed to connect to this MySQL server
    汉字转换为拼音以及缩写(javascript)
    高效率随机删除数据(不重复)
    vs2010 舒服背景 优雅字体 配置
    mvc中的ViewData用到webfrom中去
    jquery ajax return值 没有返回 的解决方法
    zShowBox (图片放大展示jquery版 兼容性好)
    动感效果的TAB选项卡 jquery 插件
    loading 加载提示······
  • 原文地址:https://www.cnblogs.com/Dobin/p/9227955.html
Copyright © 2020-2023  润新知