http学习

http协议及历史

http属于与:应用层 端口:80 https :443

七层:1物理》2数据链路 3网络 4传输 5会话》6表示》7应用
四层:1物理 2网络 3传输 4应用

91年http0.9版本 | 只有一个命令GET
96年http1.0版本|GET HEAD POST
97年http1.1版本 | GET HEAD POST OPTIONS PUT DELETE TRACE CONNECT增加http默认持久连接
15年http/2 版本 增加多工 数据流 头部压缩 服务器推送

http请求

一个http请求包含四部分:
1请求方式 /协议/版本
eg: GET /HTTP/1.1
动词包括:GET、POST、HEAD、PUT、DELETE、TRACE OPTIONS。
2 请求头
Key: value
Key: value
Key: value
请求头包含有关的客户端环境和请求正文的信息。其中Content-Type标注了第4部分的格式。
3一个回车

请求头和请求正文之间是一个空行,表示请求头已经结束,接下来的部分是请求正文。

4请求正文(可以为空)

标准格式:

Host: localhost
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2  请求头
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: [http://localhost/](https://link.jianshu.com?t=http://localhost/)
Content-Length:25
Content-Type:application/x-www-form-urlencoded
  空行
username=aa&password=1234  请求数据

http响应

1 协议/版本号 状态码 状态码描述

如:HTTP/1.1 200 OK
1xx: 信息—表示请求已接收,继续处理。
2xx: 成功—表示请求已经被成功接收、理解、接受。
3xx: 重定向—要完成请求必须进行更进一步的操作。
4xx: 客户端错误—请求有语法错误或请求无法实现。
5xx: 服务器端错误—服务器未能实现合法的请求。
常见状态码说明
200 OK //客户端请求成功
301:永久重定向
302:临时重定向
303:重定向,即从原url重定向到新的url。 例如php 的hear函数header("localtion:/index.php")
400 Bad Request //客户端请求有语法错误,不能被服务器所理解
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
403 Forbidden //服务器收到请求,但是拒绝提供服务,一般是服务器路径没有权限或者是其他权限相关问题
404 Not Found //请求资源不存在,eg:输入了错误的URL
500 Internal Server Error //服务器发生不可预期的错误:一般来说,这个问题都会在服务器端的源代码出现错误时出现,比如出现死循环。
502 Bad Gateway//作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应。比如LNMP ,php-fpm没有启动就会报502错误。
503 Server Unavailable //服务器当前不能处理客户端的请求,一段时间后可能恢复正常,比如java 容器部署war的时候,就出现503,或者是nginx处理的文件没有权限。
504 Gateway Time-out:作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI标识出的服务器,例如HTTP、FTP、LDAP)或者辅助服务器(例如DNS)收到响应,比如nginx和php-fpm, php设置sleep(200),就会收到504 Gateway Time-out。注意:某些代理服务器在DNS查询超时时会返回400或者500错误

2响应头

Key1: value1
Key2: value2
Content-Type: text/html;charset=utf-8
其中Content-Type标注了第4部分的格式。

3一个回车(\n)

和请求类似,响应头和响应正文之间是一个空行。

4响应正文(可以很长很长很长)

响应正文对应浏览器要下载的内容。

HTTP/1.1 200 OK
Content-Type: text/plain
Transfer-Encoding: chunked
25
This is the data in the first chunk
1C
and this is the second one
3
con
8
sequence
0
使用chrom浏览器查看http请求及响应:
image.png

image.png
curl -o [文件名] www.baidu.com 和wget一样下载文件
curl -i www.baidu.com 查看头部信息及网页源码 (-I  只显示http response的头信息)
curl -v www.sina.com 显示一次http通信的整个过程,包括端口连接和http request头信息
具体参考

https://www.cnblogs.com/machao/p/5788425.html :HTTP Method的讲解
http://www.ruanyifeng.com/blog/2016/08/http.html :http简单讲解-阮一峰
https://segmentfault.com/a/1190000013924583 :使用cherom查看http头部请求和响应
http://www.ruanyifeng.com/blog/2011/09/curl.html :curl常见使用-阮一峰

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