美文网首页
HTTP协议请求&响应

HTTP协议请求&响应

作者: 糖砂西红柿 | 来源:发表于2018-01-30 14:22 被阅读39次

页面请求的顺序

  • 首先是客户端发送请求,然后DNS进行解析,给浏览器返回一个IP地址。浏览器根据这个IP地址再进行请求,请求内容是一个HTML或PHP等。
  • 服务器(如APACHE服务员找到请求的HTML或PHP(php还会在服务器进行渲染后生成html),将这个HTML或PHP返回给浏览器)
  • 客户端根据得到的php或html页面再次请求js,css,img等内容。(根据代码执行的顺序,从上到下进行请求)
  • 服务器再次返回请求的内容
  • 浏览器在请求到js或css或图片后会对js或css或图片文件进行解析,最终渲染一个完整的页面


    Snipaste_2018-01-30_10-59-01.png

所以我们之所以能在浏览器中看到一个完整的页面,是由一次次请求与一次次响应组成的

http协议就相当高于我们找到工作后所签订的劳动合同,既约束劳动者,也约束用人单位。而http协议即约束Request也约束Response,在这样的规范下两者才能进行正常的交流(如果没有http协议就相当于一个用中文一个用英语很难沟通,所以当然是大家都是用中文才能沟通的好啊,哈哈)

在谷歌的network中,view source就是查看源码的意思,source就是源码的意思

请求行-请求头-请求主

Snipaste_2018-01-30_11-11-14.png

请求头中装的是与浏览器相关的信息,比如上图中的
Accept-Encoding:gizp,deflate,sdch。这个就表示浏览器能识别的编码,因为服务器具有压缩代码的功能(为的是让页面更快的响应),只有浏览器告诉服务器我能识别哪种压缩过的代码,服务器才会进行压缩,否则服务器压缩的代码,浏览器无法解析,那就不能生成页面了。上例中如果没有请求头中没有gzip,那服务器就不会进行响应的压缩。(再比如host就指的是域名)请求中还有请求主体,但是get请求时看不到请求主体的。
post请求中form data就是请求主体(get方式就没有)


Snipaste_2018-01-30_12-26-35.png

正常情况下是不该有Query String Parameters,这部分是Chrome为了我们开发方便给我们添加的东西,所以Chrome的network里面展现的东西是给我们做了一层包装,与真实的http请求是由一些差别的,差别就在这里Query String Parameters。(parameter是参数的意思)


Snipaste_2018-01-30_12-19-23.png
get,post还有一点区别
Snipaste_2018-01-30_12-24-30.png

响应头

请求头是把浏览器的相关信息高速服务器,而相对相应的就是响应头,响应头的作用就是把浏览器的相关信息告诉浏览器。 Snipaste_2018-01-30_11-56-38.png

因为文件的后缀并不能代表文档的真实内容,那怎样区分我们响应的内容到底是什么类型的呢?靠的就是content-type。就比如此处,因为content-type的值是css,所以浏览器就会把响应回来的文件当做css
来解析浏览之所知道是按照css执行还是js执行靠的就是这个content-type图片的content-type与css,js不同因为文件通过网线去走传递的都是字符串,那么信息到了浏览器,浏览器就会犯糊涂,到底是当做css解析还是js解析还是图片解析,还是html去解析靠的就是content-type去区分。


Snipaste_2018-01-30_12-14-24.png
总结:我们网页里面所有的内容都是通过请求和响应来完成的,HTTP协议约束的就是请求和响应,怎么约束呢?通过约定请求中需要什么内容(如请求头里面的各中字段如content-type等),响应中需要什么内容。响应总是相同的结构,但是根据请求的不同,请求三部分中的内容会有差别。
区别1:以post发送请求有请求主体,当我们以get请求发送,没有请求主体。

区别2:当我们以post发送请求,是由content-type的。而我们以get请求发送时没有content-type的。
根据28定则,实际开发中掌握20%的知识就足以应对80%的工程了。事实上掌握以上内容,对付我们工作中的Ajax请求了。
希望这篇文章能够帮到大伙。如果喜欢本文的话可以点赞、关注以表达对我的支持。谢谢。

相关文章

  • 网络教程

    http协议包括 请求协议:请求行、请求头、请求体 响应协议:响应行、响应头、响应体 servlet

  • HTTP协议请求&响应

    页面请求的顺序 首先是客户端发送请求,然后DNS进行解析,给浏览器返回一个IP地址。浏览器根据这个IP地址再进行请...

  • HTTP协议报文及Chrome Network常用功能

    HTTP协议报文 Http协议报文分为【Http请求报文】和【Http响应报文】 HTTP请求报文 Http请求报...

  • http长/短轮询和WebSocket 的介绍和比较

    【1】http协议介绍 1)介绍:http协议是请求/响应范式的,每个http 响应都对应一个 http 请求,h...

  • iOS-网络相关知识点整理

    一、HTTP协议 超文本传输协议 请求/响应报文 连接简历流程 HTTP的特点 1.1 请求/响应报文 HTTP的...

  • java实践:tomcat_简化版_服务调用_协议(不含网络)

    一、HTTP协议(请求行和响应行) 1. http请求:请求行 2. http响应:状态行 二、请求对象和响应对象...

  • 长轮询&短轮询

    一、http协议 http 协议是请求/响应范式的,每一个 http 响应都是由一个对应的 http 请求产生的,...

  • HTTP 协议简介

    HTTP协议 请求响应式协议,一次请求和一次响应构成一次HTTP事务。HTTP 协议是无状态的,任何两次请求都是没...

  • http协议

    http协议包含内容 请求 请求头 请求行 请求正文 响应 响应头 响应行 响应正文image.png

  • 第六个模块 HTTP协议、Restful

    HTTP协议 · HTTP协议 · 工作原理 HTTP协议请求 HTTP协议响应 HTTP协议消息报头 1、普通报...

网友评论

      本文标题:HTTP协议请求&响应

      本文链接:https://www.haomeiwen.com/subject/finqzxtx.html