Http 协议:学习笔记

1. 简介

http:超文本传输协议,是基于请求与响应模式的、无状态的(没有记忆的)、应用层的协议
位于Tcp/Ip协议的底层

2. url 组成部分详解

2.1 http/https两种协议类型
2.2 host:主机地址或域名
--地址+端口号,如192.168.x.xx:8080
--域名,如www.xxx.com
--本机地址,如localhost:8080
2.3 port:端口号(默认8080可省略)
2.4 path:请求的路径(host之后,?之前)
2.5 ?:分隔符
2.6 参数:name=value
2.7 &:多个参数的连接符
2.8 中文会被编码,以URL编码格式(%+字母)展示

3. request 部分

request的组成.png
图片.png

3.1 请求行 request line

3.2 请求头 headers

图片.png
3.2.1 Cache 头域
图片.png

If-None-Match
作用:If-None-Match和ETag一起工作,工作原理是在HTTP Response中添加ETag信息。 当用户再次请求该资源时,将在HTTP Request 中加入If-None-Match信息(ETag的值)。如果服务器验证资源的ETag没有改变(该资源没有更新),将返回一个304状态告诉客户端使用本地缓存文件。否则将返回200状态和新的资源和Etag. 使用这样的机制将提高网站的性能

图片.png

If-Modified-Since
作用: 把浏览器端缓存页面的最后修改时间发送到服务器去,服务器会把这个时间与服务器上实际文件的最后修改时间进行对比。如果时间一致,那么返回304,客户端就直接使用本地缓存文件。如果时间不一致,就会返回200和新的文件内容。客户端接到之后,会丢弃旧文件,把新文件缓存起来,并显示在浏览器中

图片.png

Pragma
防止页面被缓存, 在HTTP/1.1版本中,它和Cache-Control:no-cache作用一模一样
Pargma只有一个用法, 例如: Pragma: no-cache
注意: 在HTTP/1.0版本中,只实现了Pragema:no-cache, 没有实现Cache-Control

3.2.2 Client 头域

Accept:浏览器可接受的媒体类型
如果服务器无法返回text/html类型的数据,服务器应该返回一个406错误(non acceptable);
Accept: / 代表浏览器可以处理所有类型,(一般浏览器发给服务器都是发这个);

Accept-Encoding:编码格式
浏览器申明自己接收的编码方法,通常指定压缩方法,是否支持压缩,支持什么压缩方法(gzip,deflate),(注意:这不是只字符编码);
大部分的现代浏览器都支持gzip压缩,并会把这一信息报告给服务器。这时服务器就会压缩过的HTML发送给浏览器。这可以减少近80%的文件大小,以节省下载时间和带宽

Accept-Language:语言
浏览器申明自己接收的语言。如果网站有不同的语言版本,那么就可以通过这个信息来重定向用户的浏览器。
语言跟字符集的区别:中文是语言,中文有多种字符集,比如big5,gb2312,gbk等等;

User-Agent:客户端类型
告诉HTTP服务器, 客户端使用的操作系统和浏览器的名称和版本
它是某些网站用来收集访客信息的一般手段。例如,你可以判断访客是否在使用手机访问你的网站,然后决定是否将他们引导至一个在低分辨率下表现良好的移动网站。

Accept-Charset
浏览器申明自己接收的字符集

3.2.3 Cookie / Login 头域

非常重要!!!类似于会员卡
Cookie:最重要的header, 将cookie的值发送给HTTP 服务器

3.2.4 Entity:

Content-Length:发送给HTTP服务器数据的长度
Content-Type:发送POST的时候,body的数据类型声明

3.2.5 Miscellaneous

Referer :提供了Request的上下文信息的服务器,告诉服务器我是从哪个链接过来的,比如从我主页上链接到一个朋友那里,他的服务器就能够从HTTP Referer中统计出每天有多少用户点击我主页上的链接访问他的网站

3.2.6 Transport
图片.png

3.3 中间空一行

3.4 请求body:请求参数

Get 的请求参数都在请求行里,可以在Webforms 的QueryString查看(Fiddler)


图片.png

Post 的请求参数是在QueryString + body 中


图片.png

body: Content-type


图片.png

4. response 部分

图片.png

4.1 response 组成

  1. 状态行

  2. 消息报头


    图片.png

    图片.png
  3. 空行

  4. 响应正文

4.2 response 状态码

1xx:指示信息--表示请求已经接受,继续处理

2xx:成功--表示请求已被成功接受、理解、接受
如:200 OK //客户端请求成功(不代表登录成功)

3xx:重定向--要完成请求必须进行进一步的操作
如:302 //未登录状态下,编辑某篇文章,会重新跳转到登录界面,要求登录

4xx:客户端错误--请求有语法错误或请求无法实现
400 Bad Request// 客户端请求有语法错误,不能被服务器所理解
401 Unauthorized //请求未经授权,该状态码必须和 WWW-Authenticate 报头域一起使用
403 Forbidden //服务器收到请求,但拒绝提供服务
404 Not Found // 请求资源不存在,如输入了错误的 URL

5xx:服务器错误--服务器未能实现合法的请求
500 Internal Server Error // 服务器发生不可预期的错误
503 Server Unavailable // 服务器当前不能出来客户端的请求,一段时间后可能恢复正常

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,491评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,856评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,745评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,196评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,073评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,112评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,531评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,215评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,485评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,578评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,356评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,215评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,583评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,898评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,497评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,697评论 2 335

推荐阅读更多精彩内容