HTTP基础指南

(以下是http相关知识,在前端开发中知道这些基础的知识也是必要的,本文是根据图解http的小总结,希望可以帮助大家更好的理解http)

一.了解web以及网络基础

1.相关概念:

DNS:位于应用层,提供域名到IP地址之间的解析服务。


TCP协议: 位于传输层,提供可靠的字节流服务。(就是将大块数据分割成以报文段为单位的数据包进行管理)

IP协议: 位于网络层,tcp/ip协议族中指网际协议,是一种协议名称,作用把各种数据包传递给对方。(确保成功发送,满足ip地址和mac地址)

IP地址:指明节点被分配到的地址;MAC地址:指网卡所属的固定地址

ARP协议:解析地址协议,根据IP反查MAC

RFC:用来制定http协议技术标准文档

TCP/IP协议族层次分为以下4层

应用层:决定了向用户提供应用服务时通信的活动。(eg:文件传输协议FTP,域名系统DNS,http协议)

传输层:为上层应用层,提供处于网络连接的两台计算机之间的数据传输。(性质不同的协议,传输控制协议TCP, 用户数据报协议UDP)

网络层:处理网络流动的数据包。(数据包是网络传输的)

链路层: 连接网络的硬件部分。

三次握手:发送端发送带SYN标志数据包给对方—->接收端接受回传带SYN/ACK标志数据包确认信息–→发送端回传一个带ACK标志的数据包。

2.相关传输过程:

3.URI与URL

URI(Uniform Resource Identifier):统一资源标识符。

URL(Uniform Resource Locator):统一资源定位符。

URI用字符串标识某一互联网资源,而URL表示资源的地点(互联网上所处的位置)。URL是URI的子集。

二、简单的HTTP协议

1.HTTP是客户端和服务端之间的通信。(是不保存状态的协议)

客户端:请求访问文本或者图像资源的一方

服务端:提供资源响应的一方.

2.请求报文构成:包括请求方法,URI,协议版本,可选请求首部字段,内容,实体构成的。

常用请求方法:

(1)GET:获取资源,请求访问已被URI识别的资源。

(2)POST:传输实体的主体,常用于表单。

(3)PUT:传输文件,要求请求报文主体包含文件内容(有安全性问题,通常不用)

(4)HEAD:获得报文首部,(不返回主体部分,用于确认URI有效性以及资源更新的日期时间等)

(5)DELETE:删除文件

(6)OPTIONS: 客户端带着询问支持的方法。

(7)CONNECT:在于代理服务器通信时建立隧道,实现用隧道协议通信

3.因为http是不保存协议,所以用到Cookie状态管理。

第一次客户端没带cookie到服务端,服务端响应返回添加cookie,第二次以后请求服务端就带有cookie,最后得到响应。

请求报文——响应报文——–请求报文

三、返回结果的HTTP状态码

2XX:成功

200:客户端发送的请求在服务器端正常处理了

204:请求成功,但没有资源返回

206: 客户端进行范围请求,服务器端执行了Get请求

3XX: 重定向

301: 永久重定向,请求资源被重新分配了新的URI,以后使用的是最新的URI

302,307:临时性重定向,请求资源被分配新的URI,只本次使用新的

303:请求的资源存在着另一个URI,使用get定向获取资源

301,302,303响应状态码返回时,几乎所有的浏览器都会把post–>get,并删除报文的主体,之后自动发送求

304: 客户端发送附带条件的请求,服务端允许请求访问资源,但未满足条件的情况

4XX:客户端错误

400: 请求报文中存在语法错误

401: 发送请求需要http认证的认证信息,(若之前进行过一次请求,就表示用户认证失败)

403: 对请求资源访问被服务器拒绝

404:服务器上无法找到请求资源

5XX: 服务器错误

500:服务器在执行请求时发生故障(也可能web应用存在Bug)

503: 服务器暂时处于超负载活停机维护,无法处理请求

最后注意: 状态码和状况不一致,5开头不一定就是服务器错了,客户端的bug也可能造成5,web的内部出错,状态码依旧可以返回200

四、HTTP报文内的http信息

http通信过程包括 从客户端→服务端 以及 服务端-→客户端。

请求行和响应报文的结构

请求行: 包括请求方法,请求URI和HTTP版本 (get /HTTP/1.1)

状态行:包括表明相应结果的状态码,原因短语和HTTP版本 (HTTP/1.1 200OK)

首部字段: 表示请求的各种条件和属性的各类首部

分为: 通用首部,请求首部,响应首部,实体首部。

其他: HTTP的RFC里未定义的首部(cookie等)

五、HTTP存在的问题

1、可能被窃听

HTTP 本身不具备加密的功能,HTTP 报文使用明文方式发送

由于互联网是由联通世界各个地方的网络设施组成,所有发送和接收经过某些设备的数据都可能被截获或窥视。(例如大家都熟悉的抓包工具:Wireshark)

2、 认证问题

无法确认你发送到的服务器就是真正的目标服务器(可能服务器是伪装的)

无法确定返回的客户端是否是按照真实意图接收的客户端(可能是伪装的客户端)

无法确定正在通信的对方是否具备访问权限,Web 服务器上某些重要的信息,只想发给特定用户即使是无意义的请求也会照单全收。无法阻止海量请求下的 DoS 攻击(Denial of Service,拒绝服务攻击)。

3、 可能被篡改

请求或响应在传输途中,遭攻击者拦截并篡改内容的攻击被称为中间人攻击(Man-in-the-Middle attack,MITM)。

六:HTTPS介绍

1、 什么是HTTPS

超文本传输安全协议(英语:Hypertext Transfer Protocol Secure,缩写:HTTPS,常称为HTTP over TLS,HTTP over SSL或HTTP Secure)是一种通过计算机网络进行安全通信的传输协议。HTTPS经由HTTP进行通信,但利用SSL/TLS来加密数据包。HTTPS开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性。

2、 HTTPS怎么解决上述问题

HTTPS是在通信接口部分用 TLS(Transport Layer Security 传输层安全性协议),TLS协议采用主从式架构模型,用于在两个应用程序间通过网络创建起安全的连接,防止在交换数据时受到窃听及篡改。

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

推荐阅读更多精彩内容