http协议

https://tools.ietf.org/pdf/rfc7231.pdf

https://www.w3.org/Protocols/

===================================================================================================================

1.http协议就是一个规定了,超文本传输的格式,互相传输的时候必须传那些内容的协议。是一份协议,规定大家必须按照这个格式来传。

HTTP 协议定义服务器端和客户端之间文件传输的沟通方式.

2.我们的网页就是一个http请求,一个请求,这个请求必须按照这个协议格式发送,不然别人不认识。如果每台浏览器都按照自己的格式发送文件,自己的格式解析文件,就会乱套。所以用这个协议来约束大家发送的内容格式。

举个文档里面的例子

这一页就规定了date的格式。还举了一个例子,规定了所有人传日期的时候都必须是这个格式的。

3.每一个请求都符合http协议,不然你也发不出去,一张图片,一个json,每一个都得按照这个格式发送的。

我们可以按f12看到这些请求的协议,举个例子

和协议规定的时间显示的一样。

4.我开百度出来

这里每一个图片,css都是一个超文本,超文本传输用超文本传输协议,http协议,返回的都是200。什么前端优化压缩成一张图片,就是减少Http的请求,就是这个,因为太慢了,减少请求,减少了请求解析header,三次握手的时间,两次并一次,是要快点。计算机的的有优点来就在于计算迭代快,所以cpu处理的是很快的,卡刻的就是文件读取传输浪费了很多时间。

为什么成功就是200,失败就是500,你们知道是为什么么,这个也是协议规定的,http协议它就是一份协议。见下图

5.其实你看f12就能看出协议的结构了

general/response(回应)/request(请求)/这显示的是请求的头部信息 response header。

6.所有的信息都是携带在协议里面传输的。get请求的时候,信息是携带在url上面的,post请求的时候,携带在body里面的。所以为什么post携带文件大,header里面你最多能装多少东西啊,它毕竟只是一个header啊。

一大串都丢get的我一直不能理解。

response回来的内容。

7.其实可以理解为传输就是一大段的文本内容,字符串数据包,浏览器把这些字符串内容展示出来了而已。传输的规范就是一份协议,它的传输过程,

7.1客户端连接到Web服务器。 客户端请求服务器,request 的内容发出去,发给了Request host的服务器,然后等待。

等待的时间

7.2然后这个数据包转到下一层偷偷的干了一个tcp/ip三次握手的事情,就在我们等待的时间里面。然后数据就传回来了,但是也可能是500。

抄了别人的图,http这个字节码包转到tcp/ip层,再分发出去。这个时候,流量器,就是客户端在等待,wait。等待到对方服务器相应回来发包并接受的时间是上面的time。

很多详细解释http协议的文章,都分析了很多传输过程,我一直很懵逼,其实http它是一个协议,它规定你干哪些大家都干的事情必须走哪些规范,传什么格式。从这个协议也能倒推,数据在传输的过程中,都干了些什么。

不得不提axios里面的代码,我觉得它就是写了协议,我也没有深入看,就是翻到了。

请求http协议分析- (mysql-thinkphp) (5)的更多相关文章

  1. MySQL协议分析

    MySQL协议分析 标签: mysql 2015-02-27 10:22 1807人阅读 评论(1) 收藏 举报  分类: 数据库(19)    目录(?)[+]   1 交互过程 MySQL客户端与 ...

  2. MySQL协议分析(2)

    MySQL协议分析(2) 此阶段是在压缩传输无加密条件下进行的协议分析 思路 结合Oracle官网的说明和自己用wireshark加python进行数据包分析 步骤 客户端与服务器端是否压缩的协商阶段 ...

  3. MySQL协议分析2

    MySQL协议分析 议程 协议头 协议类型 网络协议相关函数 NET缓冲 VIO缓冲 MySQL API 协议头 ● 数据变成在网络里传输的数据,需要额外的在头部添加4 个字节的包头. . packe ...

  4. mixer: mysql协议分析

    综述 要实现一个mysql proxy,首先需要做的就是理解并实现mysql通讯协议.这样才能通过proxy架起client到server之间的桥梁. mixer的mysql协议实现主要参考mysql ...

  5. mysql 协议分析

    MYSQL Binlog协议分析 此处不讨论建立连接,验证和handshake的交互协议 Binlog协议 一个MYSQL 通信包由包头包体组成 包体根据具体的交互协议有自身的组成结构, 在binlo ...

  6. MySQL协议分析(1)

    MySQL协议分析 此阶段的协议分析是在未压缩未加密情况下的协议分析 思路: 结合Oracle官网和自己用wireshark抓的网络数据包进行协议分析 官网说明 mysql包共分为4段,格式如下: 第 ...

  7. TLS握手协议分析与理解——某HTTPS请求流量包分析

    https://xz.aliyun.com/t/1039 HTTPS简介 HTTPS,是一种网络安全传输协议,在HTTP的基础上利用SSL/TLS来对数据包进行加密,以提供对网络服务器的身份认证,保护 ...

  8. 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效

    数据库表设计时一对一关系存在的必要性 2017年07月24日 10:01:07 阅读数:694 在表设计过程中,我无意中觉得一对一关系觉得好没道理,直接放到一张表中不就可以了吗?真是说,网上信息什么都 ...

  9. 蓝牙协议分析(7)_BLE连接有关的技术分析

    转自:http://www.wowotech.net/bluetooth/ble_connection.html#comments 1. 前言 了解蓝牙的人都知道,在经典蓝牙中,保持连接(Connec ...

随机推荐

  1. Codeforces Round #588 (Div. 2)E(DFS,思维,__gcd,树)

    #define HAVE_STRUCT_TIMESPEC#include<bits/stdc++.h>using namespace std;long long a[100007];vec ...

  2. floyd的魔改应用——洛谷P2419 [USACO08JAN]牛大赛Cow Contest 题解

    想找原题请点击这里:传送门 原题: 题目背景 [Usaco2008 Jan] 题目描述 N ( ≤ N ≤ ) cows, conveniently numbered ..N, are partici ...

  3. python中解方程

    from sympy import * import numpy as np from numpy import linalg # 方程中的符号 x = Symbol('x') # 计算 result ...

  4. 集成PHP应用和SOLR

    集成 PHP 应用和 Solr 搜索引擎 您的评价:          收藏该经验       你为什么需要搜索引擎?单纯数据库不够用?如果你只是创建小网站,数据库就够了.但当你创建中性或大型应用的时 ...

  5. BUUCTF知识记录

    [强网杯 2019]随便注 先尝试普通的注入 发现注入成功了,接下来走流程的时候碰到了问题 发现过滤了select和where这个两个最重要的查询语句,不过其他的过滤很奇怪,为什么要过滤update, ...

  6. day4-2数组及方法

    数组: Js数组 可以存放任意数据类型的数据 如果索引大于数组的长度,数组自动增加到该索引值加1的长度 var arr = ["terry","larry",& ...

  7. 十 Spring的AOP的底层实现:JDK动态代理和Cglib动态代理

    SpringAOP底层的实现原理: JDK动态代理:只能对实现了接口的类产生代理.(实现接口默认JDK动态代理,底层自动切换) Cglib动态代理(类似Javassist第三方的代理技术):对没有实现 ...

  8. 将一行很长的js代码格式化输出方便查看

    之前的一行js代码,有2万多字符,打开这个网址,粘贴到左边空白框,点下面格式化: 参考下面文章: 数千行的js代码变成了一行,如何复原,该换行的换行,该对齐的对齐_开发工具_小邯韩的博客-CSDN博客 ...

  9. Windows驱动开发-IRP的完成例程

    <Windows驱动开发技术详解 >331页, 在将IRP发送给底层驱动或其他驱动之前,可以对IRP设置一个完成例程,一旦底层驱动将IRP完成后,IRP完成例程立刻被处罚,通过设置完成例程 ...

  10. CS231n -Assignments 1 Q1 and Q2

    前言 最近在youtube 上学习CS231n的课程,并尝试完成Assgnments,收获很多,这里记录下过程和结果以及过程中遇到的问题,我并不是只是完成需要补充的代码段,对于自己不熟悉的没用过的库函 ...