关于Http协议你了解多少,有多少说多少

Http协议

超文本传输协议,构建与TCP/IP协议之上,默认端口号为80,处于网络体系结构的最顶层应用层上,Http协议采用的是请求/响应的工作方式。Http是无连接无状态的。

Q1:怎么理解Http是无连接无状态的

无连接是指限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。

无状态是指协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。即我们给服务器发送 HTTP 请求之后,服务器根据请求,会给我们发送数据过来,但是,发送完,不会记录任何信息。这就表明每个请求都是独立的。

Http的这两个特性的优缺点:

优点在于解放了服务器,每一次请求“点到为止”不会造成不必要连接占用。

缺点在于每次请求会传输大量重复的内容信息。

CookieSession是用来保持Http连接的两种技术。

Http报文

Http在应用层通过报文的方式来交换数据,分为请求报文响应报文

请求报文

Http的请求报文由请求行,请求头,请求体组成

  • 请求行:声明了请求方法,主机域名,资源路径和协议版本

  • 请求头:包括一些访问的域名、用户代理、Cookie等信息

  • 请求体:Http请求的数据

请求行详解

请求方法

  • Get:从服务器读取数据

  • Post:为服务器添加信息

  • Put:为指定的URL下添加一个文档

  • Delete:删除指定URL所标志的信息

Q2:Http的Get和Post请求方式有什么区别

1. Get可提交的数据量收到URL长度的限制,URL的长度最多是2048个字符。Post请求是没有长度的限制的。

2. Get请求的数据类型只允许Ascll字符,Post可以是任何类型

3. Get请求的安全性较差,因为数据参数是直接拼接在URL后面的,可见。Post数据封装在Http的请求体中,浏览器中没有缓存。

4. Get请求适用于数据量较小,并且数据不敏感的情况。Post正好相反

请求头详解

采用heade : value的方式

[图片上传失败...(image-d684c9-1540289631351)]

请求体详解

存放需要发送给服务器的数据信息

请求体有三种使用方式:

1. 数据交换:请求体可以任意类型,比如json串,不过服务器需要解析

2. 键值对:Get请求数据每个键值对通过&拼接在URL后面,键与值之间用=连接

3. 分部分形式:


POST http://www.example.com HTTP/1.1
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryrGKCBY7qhFd3TrwA
------WebKitFormBoundaryrGKCBY7qhFd3TrwA
Content-Disposition: form-data; name="text"
title
------WebKitFormBoundaryrGKCBY7qhFd3TrwA
Content-Disposition: form-data; name="file"; filename="chrome.png"
Content-Type: image/png
PNG ... content of chrome.png ...
------WebKitFormBoundaryrGKCBY7qhFd3TrwA--

请求体被分为多个部分,boundary 用于分割不同的字段,为了避免与正文内容重复。然后接着一个空行 接 内容,最后以

--boundary-- 结束

boundary:分割线

响应报文

包括状态行,响应头和响应体

  • 状态行:包括协议版本Version、状态码Status Code、状态码描述

  • 响应头:包括搭建服务器的软件,发送响应的时间,回应数据的格式等信息

  • 响应体:响应的具体数据

常见的响应码

*   `200 OK` 客户端请求成功
*   `301 Moved Permanently` 请求永久重定向
*   `302 Moved Temporarily` 请求临时重定向
*   `304 Not Modified` 文件未修改,可以直接使用缓存的文件。
*   `400 Bad Request` 由于客户端请求有语法错误,不能被服务器所理解。
*   `401 Unauthorized` 请求未经授权。这个状态代码必须和WWW-Authenticate报头域一起使用
*   `403 Forbidden` 服务器收到请求,但是拒绝提供服务。服务器通常会在响应正文中给出不提供服务的原因
*   `404 Not Found` 请求的资源不存在,例如,输入了错误的URL
*   `500 Internal Server Error` 服务器发生不可预期的错误,导致无法完成客户端的请求。
*   `503 Service Unavailable` 服务器当前不能够处理客户端的请求,在一段时间之后,服务器可能会恢复正常。

相关知识

[TOC]
Q3:Http1.0和Http1.1的区别有哪些

Http1.1比Http1.0升级了如下地方

1. 引入了持久连接,意思就是在一个TCP连接中可以传送多个Http的请求和响应。在请求头中添加Connection: Keep-Alive开启

2. 多个请求和响应可以同时进行

3. 引入更加多的请求头和响应头

Q4:Http和Https的区别

1. Http处在应用层,Https处在传输层

2. Http明文传输,Https通过ssl加密和身份认证

3. Http默认80端口,Https默认443端口
1

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

推荐阅读更多精彩内容

  • 胡晓会 河南漯河 网络初级九期学员 2018.9.24坚持分享第212天 中秋节快乐! 人生最大的幸福就是亲,这个...
    胡晓会阅读 117评论 0 0
  • 文/池香衣 我走过你 走过十三节车厢 车厢长过和你相处的时光 车厢里 一百个人 梦见另外一百个人 如果你也梦见我 ...
    池香衣阅读 266评论 0 0
  • 当你想关上门做人的时候 人生不允许 就会把你挖出来 伤口 是阳光照进你身体的地方
    Lilian的安阅读 168评论 1 0