请求头(request headers)和响应头(response headers)解析
*****************请求头(request headers)*****************
POST /user/signin HTTP/1.1 --请求方式 文件名 http版本号
Host: passport.cnblogs.com --请求地址
Connection: keep-alive --Connection决定当前的事务完成后,是否会关闭网络连接。如果该值是“keep-alive”,网络连接就是持久 的,不会关闭,使得对同一个服务器的请求可以继续在该连接上完成。
Content-Length: 557 --发送给HTTP服务器的长度
Origin: https://passport.cnblogs.com --起源是来自哪里
X-Requested-With: XMLHttpRequest --表明是ajax异步请求
Referer: https://passport.cn blogs.com/user/signin?ReturnUrl=http://www.cnblogs.com/fighter007/p/8422868.html
--提供上下文服务器,告诉服务器我是从哪里来的,一般用于网站流量统计。
Accept-Encoding: gzip, deflate, br --浏览器申明自己接收的编码方式:通常指定压缩、是否支持压缩、支持什么方式压缩(gzip/default)
Accept-Language: zh-CN,zh;q=0.9 --浏览器申明自己接收的语言
Accept: application/json, text/javascript, */*; q=0.01--浏览器接收的媒体类型 application/json, text/javascript */* 代表浏览器可以处理所有类型
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36
--告诉HTTP服务器客户端浏览器使用的操作系统和浏览器的版本和名称
Content-Type: application/json; charset=UTF-8 --浏览器接收的内容类型、字符集
补充:常见的媒体格式Content-Type类型如下:
- text/html : HTML格式
- text/plain :纯文本格式
- text/xml : XML格式
- image/gif :gif图片格式
- image/jpeg :jpg图片格式
- image/png:png图片格式
以application开头的媒体格式类型:
- application/xhtml+xml :XHTML格式
- application/xml : XML数据格式
- application/atom+xml :Atom XML聚合格式
- application/json : JSON数据格式
- application/pdf :pdf格式
- application/msword : Word文档格式
- application/octet-stream : 二进制流数据(如常见的文件下载)
- application/x-www-form-urlencoded : <form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)
另外一种常见的媒体格式是上传文件之时使用的:
- multipart/form-data : 需要在表单中进行文件上传时,就需要使用该格式
-------------以上就是我们在日常的开发中,经常会用到的若干content-type的内容格式。
Cookie: UM_distinctid=15f9ef04ee72e5-0a65edd08d82c2-5b44271d-100200-15f9ef04ee92f6; _ga=GA1.2.2033933919.1494296675; __utma=226521935.2033933919.1494296675.1513510580.1513510580.1; __utmz=226521935.1513510580.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); SyntaxHighlighter=python; _gid=GA1.2.1677447691.1517822201; ASP.NET_SessionId=nepkrr03bth2xgcgyeqadjuz; SERVERID=34e1ee01aa40e94e2474dffd938824db|1518434521|1518434492
--cookies:是服务器发送到浏览器并保存在本地的一小块数据,存储在header中,它会在浏览器下次向同一服务器再发起请求时被携带并发送到服务器上,通常,它用于告知服务端两个请求是否来自同一浏览器,如保持用户的登录状态.
*****************响应头(response headers)解析*****************
HTTP/1.1 200 OK --响应的状态码 200表示正常应答
Date: Mon, 12 Feb 2018 11:22:13 GMT --生成消息的具体时间和日期
Last-Modified:Wed, 21 Dec 2011 09:09:10 GMT --申明资源的最后修改日期和时间
Content-Type: application/json; charset=utf-8 --http服务器告诉浏览器自己响应的对象类型和字符集(并且告诉客户端实际返回的内容的内容类型)
更多类型,例如:
Content-Type:text/html; charset=utf-8
Content-Type:text/html;charset=GB2312
Content-Type: image/jpeg
Content-Length: 54 --http服务器的响应实体正文的长度
Content-Language:da --http服务器告诉浏览器自己响应的语言
Content-Encoding:gzip --http服务器表名自己使用了什么压缩方法
Connection: keep-alive --Connection决定当前的事务完成后,是否会关闭网络连接。如果该值是“keep-alive”,网络连接就是持久的,不会关闭,使得对同一个服务器的请求可以继续在该连接上完成
Cache-Control: private -- "private" 表示该响应是专用于某单个用户的,中间人不能缓存此响应,该响应只能应用于浏览器私有缓存中。
*****
补充:"public" 指令表示该响应可以被任何中间人(译者注:比如中间代理、CDN等)缓存。
若指定了"public",则一些通常不被中间人缓存的页面(译者注:因为默认是private)
(比如 带有HTTP验证信息(帐号密码)的页面 或 某些特定影响状态码的页面),将会被其缓存。
而 "private" 则表示该响应是专用于某单个用户的,中间人不能缓存此响应,该响应只能应用于浏览器私有缓存中。
*****
X-AspNetMvc-Version: 5.2 --asp.net版本号
X-AspNet-Version: 4.0.30319 --asp.net技术的版本号
X-Powered-By: ASP.NET --表示网站是由什么技术开发
Set-Cookie: SERVERID=34e1ee01aa40e94e2474dffd938824db|1518434533|1518434492;Path=/
--Set-Cookie是非常重要的header, 用于把cookie 发送到客户端浏览器, 每一个写入cookie都会生成一个Set-Cookie.
请求头(request headers)和响应头(response headers)解析的更多相关文章
- HTTP请求(Request)和回应(Response)对象
附录H HTTP请求(Request)和回应(Response)对象 57 http://djangobook.py3k.cn/ Django使用request和response对象在系统间传递状态. ...
- 请求头(request)和响应头(response)
说一说常见的请求头和相应头都有什么呢? 1)请求(客户端->服务端[request]) GET(请求的方式) /newcoder/hello.html(请求的目标资源) HTTP/1.1(请求采 ...
- HTTP请求协议中请求报文(Request Headers)跟响应报文(Response Headers)的简单理解
背景 今儿个一新来的应届生问我,开发模式中所看到的web请求的请求头里的属性怎么理解,我便根据自己的经验随便拉开一个请求跟他聊了起来,顺便自己记录下文字版,以后再有交流直接发地址给他就好了,嘻嘻,机智 ...
- HTTP消息头(HTTP headers)-常用的HTTP请求头与响应头
HTTP消息头是指,在超文本传输协议( Hypertext Transfer Protocol ,HTTP)的请求和响应消息中,协议头部分的那些组件.HTTP消息头用来准确描述正在获取的资源.服务器或 ...
- HTTP消息头(HTTP headers)-HTTP请求头与HTTP响应头
感谢大佬:https://itbilu.com/other/relate/E1T0q4EIe.html HTTP协议将传输的信息分隔为两部分:HTTP信息头.HTTP信息体.通过HTTP头信息,使客户 ...
- Android系列之网络(二)----HTTP请求头与响应头
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- (二)----HTTP请求头与响应头
一.HTTP头引入: 正确的设置HTTP头部信息有助于搜索引擎判断网页及提升网站访问速度.通常HTTP消息包括:客户机向服务器的请求消息和服务器向客户机的响应消 息.客户端向服务器发送一个请求,请求头 ...
- http 请求头和响应头
客户端发送请求过程带着的数据: 1.请求地址 2.请求方式 3.请求头 request headers 4.请求参数 https://www.juhe.cn/ 130.... 1a2b....pei ...
- http header详解,HTTP头、请求头、响应头、实体头
Content-Language,Content-Length,Content-Type,Content-Encoding,mime分析 Accept 指定客户端能够接收的内容类型 Accept:te ...
随机推荐
- 【[CQOI2011]动态逆序对】
这是我的第一个数据结构套数据结构 不是线段树套\(Splay\),而是非常蛇皮的块状链表套树状数组 如果这里按照\(\sqrt{n}\)的大小来分块,那么就需要\(n\sqrt{n}\)的空间,可能开 ...
- apache、nginx实现反向代理
一.apache(不推荐): 代理80端口:a. 配置:b. 效果:c. 配置文件参考: ServerRoot "/etc/httpd" Listen 80 ProxyPass / ...
- 【vue】饿了么项目-使用webpack打包项目
1.vue cli给我们提供了npm run build命令打包项目,在packa.json文件中scripts对象中有build属性,当我们执行npm run build时,就执行build对应的& ...
- [Python 多线程] asyncio (十六)
asyncio 该模块是3.4版本加入的新功能. 先来看一个例子: def a(): for x in range(3): print('a.x', x) def b(): for x in 'abc ...
- JNI由浅入深_6_简单对象的应用
1.声明native方法 public class ComplexObject { /** * 返回一个对象数组 * @param val * @return */ public native Per ...
- nginx编译问题:make[1]: *** [/usr/local/pcre//Makefile] Error 127
解决方法: 是由于nginx高版本的需要使用pcre原文件路径. 解压pcre-7.9.tar.gz 例如解压后位置在 /home/wang/pcre-7.9位置 使用nginx配置的时候 ./con ...
- 自定义view(结合刻度盘学习)
先上效果图 一.View的测量(刻度盘的大小测量) 在现实生活中,我们如果要去画一个图形,那么便要知道它的大小和位置.所以android绘图时需要我们对view进行测量.android为我们提供了on ...
- Unity各平台内置宏定义
属性 方法 UNITY_EDITOR #define directive for calling Unity Editor scripts from your game code. UNITY_EDI ...
- Linux启动流程(CentOS6)
内核级别: (POST)BIOS加电自检-->(Boot Sequence)从BIOS中读取启动顺序-->读取MBR中的bootloader-->加载内核-->读取伪根--&g ...
- Python中读取文件输出时在头部输出\ufeff
问题出现: 在我测试python中的文本文件的读取与写入时,用到了字典对象来存储读出的数据. std_data = dict() with open(sys.argv[1], encoding='UT ...