HTTP请求报文

GET / HTTP/1.1
Host: www.baidu.com
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate, sdch
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6
Cookie: BAIDUID=4082549DEE5E64678FC46642E185D98C:

请求行:

  由3部分组成,分别为:请求方法、URL、协议版本,之间由空格分隔。例如,GET /index.html HTTP/1.1。

请求头部:

  Host:接受请求的服务器地址,可以是IP:端口号,也可以是域名

  Connection:指定与连接相关的属性,如Connection:Keep-Alive

  User-Agent:发起请求的应用程序名称

  Accept:它们为服务器提供了一些额外信息,比如客户端希望接收什么类型的数据。例子中接收html,xhtml,xml等数据。

  Accept-Encoding:通知服务端可以发送的数据压缩格式

  Accept-Language:通知服务端可以发送的语言

  Cookie:Cookie信息,客户端用它向服务器传送一个令牌——它并不是真正的安全首部,但确实隐含了安全功能

  请求头部的最后会有一个空行,表示请求头部结束,接下来为请求正文

请求正文:

  可选部分,比如GET请求就没有请求正文。

  POST方法将请求参数封装在HTTP请求正文中,可以传输大量数据,这样POST方式对传送的数据大小没有限制,而且也不会显示在URL中。

HTTP响应报文

HTTP/1.1 200 OK
Server: bfe/1.0.8.18
Date: Tue, 20 Nov 2018 03:10:19 GMT
Expires: Tue, 20 Nov 2018 03:10:29 GMT
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Content-Length: 277
Last-Modified: Mon, 13 Jun 2016 02:50:03 GMT
Connection: Keep-Alive
ETag: "575e1f5b-115"
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Pragma: no-cache
Accept-Ranges: bytes

状态行:

  HTTP/1.1 200 OK

响应头部:

  Server:服务器应用程序软件的名称和版本

  Date:服务器产生响应的日期

  Content-Type:响应正文的类型,例子中响应实体的主体是一个html文本。

  Content-Length:所传送实体主体的长度或大小,例子中响应实体的主体包含了277字节的数据

  Last-Modified:资源的最后修改日期时间

  Connection:连接方式,close或keep-alive

  ETag:资源的匹配信息

  Cache-Control:控制缓存的行为

  Pragma:报文指令

  Accept-Ranges:是否接受字节范围请求

最新文章

  1. 快速卸载VS2015的办法
  2. uva111动态规划之最长公共子序列
  3. 清除Outlook 2013中缓存的邮件地址
  4. 20145218 《Java程序设计》课程总结
  5. Firefox 32 支持 Public Key Pinning 对抗中间人攻击。
  6. 源码级分析Android系统启动流程
  7. Linux服务器集群系统(二)--转
  8. JS 函数中返回另一个函数
  9. sqlserver 自学笔记之 常量,变量及函数
  10. DataTabel DataSet 对象 转换成json
  11. Sencha Touch vs jQuery Mobile
  12. unittest 框架-待优化
  13. javaWeb使用百度编辑器上传图片的问题
  14. 解决idea spring boot项目中target中没有同步更新最新目录文件及资源
  15. java调用webservice方法
  16. .net core 2.0 Unable to convert MySQL date/time to System.DateTime
  17. Python练习1
  18. shellcode 编码技术
  19. 2013 C#单元测试
  20. 【转】java并发编程系列之ReadWriteLock读写锁的使用

热门文章

  1. Hive记录-Sqoop常用命令
  2. C#设计模式(15)——迭代器模式
  3. 机器学习课程-第7周-支持向量机(Support Vector Machines)
  4. A+ B
  5. Python中的包ImportError
  6. 25. Spring Boot与缓存 JSR-107、Spring缓存抽象
  7. MySQL - 日常操作一 增删改查
  8. Java SE之反射技术[Class](三)
  9. python - 迭代器(迭代协议/可迭代对象)
  10. 11、Logback日志框架介绍和SpringBoot整合实战 2节课