你需要认识一些常见的头部以及了解报文的详细结构


请求报文的请求行

GET/HTTP/1.1

响应报文的响应行

HTTP/1.1 200 OK

想必这些大家都知道了


请求

我访问一个页面

Host         //访问的域名、

\r\n        //就是CR-LF

Connection    //请求保持的时间

User-Insecure-Requests : 1    //服务器可以读懂客户端发出的信息,它以后会用https而不是http

User-Agent      //客户端的相关信息(系统版本,浏览器版本)

Accept      //客户端能接收的数据类型

Referer      //通过某个外链访问host(也就是通过某个外链访问www.so.com)

Accept-Encoding  //文件传输钱压缩用的编码

Accept-Language    //客户端的自然语言

Cookie        //Cookie的信息(由此可得这是第二次或以后的请求)

重点都用下划线标出了


响应

Server    //服务器使用的服务器软件及其版本,有时也会显示操作系统和使用的语言及其版本

Date    //日期

Contect-Type    //响应的数据类型

Contect-Length   //响应的数据长度

Cache-Control   //缓存的相关信息

Last-Modified    //某时间的资源和现在的资源是否一致

Connect      //连接状态

ETAG       //缓存验证机制,验证用户进入URL时的缓存,然后显示在响应里,用于追踪用户

expiries      //响应过期的时间

Accept-Ranges    //自身支持范围请求,下载文件时可以暂停以后继续下载

SetCookie 在这个响应里没有也就是说这是第二次或以后的响应但是这个头部也需要特别注意

SetCookie 可能会有一些属性如expiries表明了响应失效的时间,domain是域名,path是相对路径

如果见到其他属性也要注意,不懂的请百度,Cookie在WEB安全中极其重要,保存了用户的


//本系列教程基于《图解HTTP》,此书国内各大购物网站皆可购买


 转载请注明出处  by:M_ZPHr

 最后修改日期:2019-02-03

#WEB安全基础 : HTTP协议 | 0x10 请求和响应报文重点结构及常见头部的更多相关文章

  1. #WEB安全基础 : HTTP协议 | 0x10 扩展HTTP报文结构概念和内容编码

    #以后的知识都是HTTP协议的扩展,如果精力有限可以选择暂时忽略,注意只是暂时忽略,以后的东西同样重要 HTTP传输数据时可以直接传输也可以对数据进行编码,由于编码在计算机内运行,所以会占用一些CPU ...

  2. http协议基础(二)请求和响应报文的构成

    http协议用于客户端和服务器之间的通信,请求访问资源的一方称为客户端,而提供资源响应的一方称为服务器端. 下面就是客户端和服务端之间简单的通信过程 PS:请求必须从客户端建立通信,服务端没收到请求之 ...

  3. #WEB安全基础 : HTTP协议 | 文章索引

    本系列讲解WEB安全所需要的HTTP协议 #WEB安全基础 : HTTP协议 | 0x0 TCP/IP四层结构 #WEB安全基础 : HTTP协议 | 0x1 TCP/IP通信 #WEB安全基础 : ...

  4. #WEB安全基础 : HTTP协议 | 0x8 HTTP的Cookie技术

    说道Cookie,你喜欢吃饼干吗? 这里的Cookie不是饼干=_= HTTP不对请求和响应的通信状态进行保存,所以被称为无状态协议,为了保持状态和协议功能引入了Cookie技术 Cookie技术在请 ...

  5. 老李分享:HTTP协议之请求和响应

    老李分享:HTTP协议之请求和响应   HTTP请求头详解: GET http://www.foo.com/ HTTP/1.1 GET是请求方式,请求方式有GET/POST http://www.fo ...

  6. 【渗透课程】第二篇下-HTTP协议的请求与响应深度剖析

    [渗透课程]第二篇下-HTTP协议的请求与响应深度剖析 HTTP1.1目前支持以下7种请求方法: 常见的MIME类型如下: 第一个数字有五种可能的取值: 目录 什么是请求方法?什么是请求头? HTTP ...

  7. 02_Django-路由配置-HTTP协议的请求和响应

    02_Django-路由配置-HTTP协议的请求和响应 视频:https://www.bilibili.com/video/BV1vK4y1o7jH 博客:https://blog.csdn.net/ ...

  8. #WEB安全基础 : HTTP协议 | 0x12 MIME多用途邮件扩展以及多部分对象集合

    我们是怎么让邮件里又有图片又有文字的? 文字和图片是两个不同的类型,而邮件又是一个类型. C语言的结构体允许用户定义一个含有多类型的自定义类型 像这样,看不懂没关系,你只要知道邮件里有多个类型就可以了 ...

  9. 2.(基础)tornado的请求与响应

    之前我们介绍了tornado 的基础流程,但是还遗留了一些问题,今天我们就来解决这些遗留问题并学习新的内容 settings,使用tornado.web.Application(handler, ** ...

随机推荐

  1. selenium之使用chrome浏览器测试(附chromedriver与chrome的对应关系表)

    https://www.cnblogs.com/JHblogs/p/7699951.html

  2. BZOJ.4942.[NOI2017]整数(分块)

    BZOJ 洛谷 UOJ 可能是退役之前最后一个BZOJ rank1了? 参考这里. 如果没有减法,对一个二进制数暴力进位,均摊复杂度是\(O(1)\)的(要进\(O(n)\)次位就至少需要\(O(n) ...

  3. Android系统文件目录路径说明

    系统数据存储路径,如下:其中应用程序包名为:com.spt ContextWrapper类中,包含以下方法: 1. getFilesDir() --> 内部存储 @Override public ...

  4. 我的 FPGA 学习历程(05)—— 使用 Modelsim 仿真工具

    在第 3 篇中讲到了如何使用图形进行仿真激励输入,图形输入法尽管简单易学,但如若要求复杂的仿真输入激励.较长的仿真时间或是要求打印输出信息乃至输出文件日志则显得不够用了. 本篇以上一篇的 3-8 译码 ...

  5. git Disconnected:No supported authentication methods available问题解决

    在本地克隆gitlab上的项目,报如下错误:Disconnected:No supported authentication methods available(server sent:publick ...

  6. goroutine 和线程的区别

    好久没写点儿啥了,强行更新一下. 1,从使用上讲 1,goroutine 比线程更轻量级,可以创建十万.百万不用担心资源问题. 2,goroutine 和 chan 搭配使用,实现多线程.高并发 实现 ...

  7. JAVA使用POI如何导出百万级别数据(转)

    https://blog.csdn.net/happyljw/article/details/52809244   用过POI的人都知道,在POI以前的版本中并不支持大数据量的处理,如果数据量过多还会 ...

  8. swift中单例类的创建

    1.最经典的 class TheOneAndOnlyKraken {     static let sharedInstance = TheOneAndOnlyKraken()     private ...

  9. Windows系统IntelliJ IDEA安装配置

    IntelliJ IDEA安装 IntelliJ IDEA,是java编程语言开发的集成环境,业界公认的最好的Java开发IDE之一.打开IDEA官方网站https://www.jetbrains.c ...

  10. 19.3.25 sql查询语句

    1.单表查询:select * from 表名 where id = 111 2.查询表内数据并以id排序:select * from 表名 order by id (降序:desc/升序:asc) ...