1.Http协议概述

关于Http协议的发展,各种资料有很多,在此不再赘述,不明白的小伙伴儿可以去搜一下,Http报文分为请求报文和相应报文,由于Http是面向文本的,因此在报文中的每一个字段都是一些ASCII码,下图是摘自谢希仁第五版《计算机网络》的图片,本文按照这两种分类对报文头的字段进行一下汇总说明。

资料都是从给位大神那里获取到的,我只是负责汇总而已~

2.Http请求报文

如上图(a)中为请求报文格式,分为请求行、首部行和实体主体(本文对实体主体不做说明,下同);

2.1 请求行

请求行包括方法、URL和版本,下面分别其进行说明。

方法:HTTP协议的请求方法有GET、POST、HEAD、PUT、DELETE、OPTIONS、TRACE、CONNECT,最常用的方法是GET和POST;

URL:请求的地址

版本:协议名称及版本号,例如:HTTP/1.1

2.2 首部行

Accept:客户端期待接收的文件类型

Accept-Encoding:客户端可以接收的编码格式。它是为了压缩并提高文件传递速度,客户端在接收到Web相应之后衔接吗,然后检查文件格式

Accept-Languages:客户端期望接收到的语言种类

Cache-Control:

Connection:用来通知服务器是否可以保持固定的HTTP连接,包括Upgrade,Keep-Alive和close。HTTP/1.1使用Keep-Alive为默认值,保证了浏览器需要多个文件时,不需要每次都建立连接。使用close之后,服务器会断开与客户端的连接。

Host:请求的目标主机

Cookie:这个字段在开发的时候比较常用,最初在实现购物车效果的时候,一般都采用Cookie。关于Cookie的工作原理,文章最后会做详细解释。

User-Agent:User-Agent是Http协议中的一部分,属于头域的组成部分,User Agent也简称UA。用较为普通的一点来说,是一种向访问网站提供你所使用的浏览器类型、操作系统及版本、CPU 类型、浏览器渲染引擎、浏览器语言、浏览器插件等信息的标识。具体内容请参考:http://blog.csdn.net/rj042/article/details/6991441

Upgrade-Insecure-Requests:与安全相关的设置

If-Modified-Since:

3.Http响应报文

4.Cookie工作原理

Cookie是这样工作的:

当用户浏览某个使用Cookie的网站时,该网站的服务器就为用户产生一个唯一的识别码,并以此作为索引在服务器的后端数据库中产生一个项目。并在给用户的HTTP相应报文中添加一个叫做Set-Cookie的首部行,这里的“首部字段名称”就是“Set-Cookie”,对应的字段值就是服务器赋予该用户的“识别码”。其格式如下:

Set-cookie:abcdefg(只作为示例,实际肯定比这个复杂)

当用户收到这个响应式,其浏览器就在他管理的特定Cookie文件中添加一行,其中包括这个服务器的主机名(即host字段)和Set-cookie对应的这个网站的识别码,并放到HTTP请求报文的Cookie首部行中,如下:

Cookie:abcdefg

以上就是整个Cookie的流程,网站可以根据Cookie值跟踪用户在该网站的活动,假设该网站为一个购物网站,那么服务器就可以为该用户通过Cookie维持一张购物列表,使用户在结束这次购物时可以一起付费。

转载于:https://www.cnblogs.com/guweiwei/p/7447352.html

Http协议中常用字段总结(不定时完善中)相关推荐

  1. mysql数据库中常用的类型_MySQL数据库中常用字段类型

    MySQL数据库中常用字段类型 整数型:TINYINT,SMALLINT,INT,BIGINT 小数型:FLOAT,DOUBLE,DECIMAL(M,D) 字符型:CHAR,VARCHAR 日期型:D ...

  2. 如何更新mysql数据库字段_如何使用MySQL一个表中的字段更新另一个表中字段

    1,修改1列 update student s, city c set s.city_name = c.name where s.city_code = c.code; 2,修改多个列 update ...

  3. 开发中常用的linux语句,MySQL开发中常用的查询语句总结

    1.查询数值型数据: SELECT * FROM tb_name WHERE sum > 100; 查询谓词:>,=,,!=,!>,!,=< 2.查询字符串 SELECT * ...

  4. 检测网络是否稳定的计算机命令,电脑中常用的网络检测命令|电脑中检测网络是否存在故障的几条命令...

    ‍ 通常情况下,我们使用电脑的同时要求电脑要连接网络,而网络出现问题导致无法上网也是常见的现象.了解一些电脑中常用的网络检测命令有助于我们排查网络故障.在接下来的内容中,系统城要介绍几条检测电脑网络是 ...

  5. 计算机中常用软件列表,详解win10中常用软件列表不要在任务栏显示的方法

    我们在win10系统的使用中,在win10的界面中我们经常使用软件在电脑任务栏中会在电脑中显示,那很多的小伙伴在电脑中是不想要显示的遇到这个问题我们怎么取消这个常用的软件在任务栏一直显示的情况呢,今天 ...

  6. Js读取Cookie中指定字段的值,Js中读取某个Cookie,Js中根据Cookie的key得到对应的value,Js正则表达式匹配指定的Cookie

    Js中想要读取Cookie中指定字段的值,可以遍历Cookie根据指定Key提取Cookie,或者使用正则表达式匹配Cookie,代码如下: /*** @description: 遍历cookie得到 ...

  7. 计算机中常用的储存度量单位有,计算机中度量存储信息容量的基本单位是什么?...

    计算机中度量存储信息容量的基本单位是什么? (2006-09-04 15:58:08) 1KB=1024字节, KB也叫千字节 1MB=1024KB,MB是兆字节 1GB=1024MB,GB是千兆字节 ...

  8. java中常用的坑_Java技术开发中的坑

    1.(2014/05/28)struts2中使用eclipse自动获取getter和setter方法的坑 今天着实被eclipse坑了一把,平时遇到get和set方法时,我都是通过eclipse自动生 ...

  9. 根据list中某个字段的值排序_MySql中常用函数

    一.group_concat group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符']) group_conc ...

  10. 计算机网络通信中常用的检错码是,计算机网络通信中常用的检错码有[填空(1)]和[填空(2)]...

    为糖糖浆粘锅过多浆量是因,计算机网粘性过大,高所且包度过导致衣温. 脉怒不是下列心脏.络通血下降线示心影量减张D增的临点(哪项.尿床特压塞压下降B颈静少E. 信中下列先天性心流的中不左向脏病的是右分疾 ...

最新文章

  1. 独家福利 | 科大讯飞全球1024开发者节限时免费门票!
  2. Linux数据报文接收发送总结7
  3. python 中 try、except、finally的用法(异常处理)
  4. linux四种集群是什么,lvs四种集群特点及使用场景
  5. Djang drf:APIView源码分析
  6. grep 多模式匹配
  7. EventBus,轻松实现跨组件跨线程通信
  8. turbo c语言教程,C语言基础教程(六)Turbo C 程序设计初步(1)
  9. 平面设计图文混排要怎么做
  10. Python实现连点器
  11. 100流明相当于多少w_GE的50W卤素灯光通量标明1500流明实际有这么高吗换几W的LED灯较合适...
  12. 浏览器兼容问题及解决方法
  13. 关于三极管,我忽视了两点
  14. python在园林中的应用_攀缘植物在园林中的应用
  15. 微信APP支付之IJpay的使用
  16. IOS苹果内购 PHP后端验证票据
  17. layui数据表格中包含图片的处理方式
  18. 8g内存学习计算机专业够吗,电脑8g内存够用吗 内存多大才够
  19. html调用腾讯地图定位当前位置,vue web项目中调用腾讯地图API获取当前位置的经纬度...
  20. SEO的外链与描文本该如何添加?

热门文章

  1. 【渝粤教育】电大中专品牌管理与推广 (3)作业 题库
  2. 【渝粤教育】广东开放大学 供应链与物流管理 形成性考核 (56)
  3. 23种设计模式(八)对象创建之抽象工厂
  4. Soft Bellman Equation and Soft Value Iteration证明
  5. 计算机网络基础系列(二)计算机网络体系结构
  6. STM8L051F3基础功能:内部时钟;TIM2定时器;串口及printf;
  7. 【转】飞鸽端口号被占用时的解决方法
  8. [bzoj1878][SDOI2009]HH的项链
  9. 几种方法帮你更有效率的记笔记
  10. js 获取select 中option 的个数