美文网首页
HTTP协议笔记

HTTP协议笔记

作者: yatttto | 来源:发表于2016-09-26 07:01 被阅读0次

HTTP协议笔记

标签(空格分隔): HTTP,TCP/IP


[TOC]

1.网络协议基础知识

TCP/IP协议族按层次分为以下四层:

应用层、传输层、网络层、数据链路层

应用层:

应用层的协议有比如FTP,DNS以及HTTP协议

传输层:

主要是TCP(面向有连接)和UDP(面向无连接)

网络层:

网络层则是用来处理在网络上流动的数据包,数据包是网络传输的最小单位。主要的协议为IP协议。

链路层:

主要是来处理链接网络的硬件部分。

IP 协议:

IP协议的作用是把各数据包传送给对方。其中重要的两个部分则是IP地址(勿和协议混淆)以及MAC地址(MAC地址是网卡所属的固定的地址)。并且IP地址与MAC地址相配对,IP地址可变,MAC地址不可变。

ARP协议:

一种解析地址的协议,可以通过对方的IP地址查出对应的MAC地址。

TCP协议:

三次握手:

TCP是面向有连接的传输协议。TCP不会对数据包置之不理,而是一直会向对方确认所传输的数据包是否已经到达。在三次握手中,会使用SYN以及ACK标志来进行确认。

发送段首先将标有SYN的数据包发送给接收端,接收端收到后,回答一个带有SYN以及ACK的数据包来表示己方已经成功的接收到了消息。最后发送端再回传一个ACK标志的数据包给接收端。这时代表三次握手结束。此时发送端再向接收端开始传送数据。

发送端 >————SYN————>接收端

发送端 <———SYN/ACK———<接收端

发送端 >————ACK————>接收端

四次挥手

发送端 >———FIN/ACK———>接收端

发送端 <————ACK————<接收端

发送端 <————FIN————<接收端

发送端 >————ACK————>接收端

DNS服务:

DNS是和HTTP一样位于应用层的协议,它的作用是提供域名和IP地址之间的解析服务。也就是给我们一个域名,我们可以查它的IP地址或者说,通过IP地址,反查出域名。

2.HTTP

HTTP协议主要是客户端到服务器端的通信协议。

HTTP协议可以分出客户端以及服务器端,因为总是客户端发送请求,而服务器端回复响应。所以换句话说,客户端先发出请求,后而有服务器端作出响应。

HTTP是一种无状态协议,也就是说不对请求和响应之间的通信状态进行保存。所以只要有新的请求发生,就会有新的回应产生。(cookie的使用则是为了方便管理状态)

HTTP使用URI定位资源。

告知服务器意图的HTTP方法

GET:获取资源

GET方法用来请求访问已经被URI识别的资源,然后资源通过服务器解析后返回响应的内容。如果请求的资源是文本,那就保持原样返回。

POST:传输实体主体

POST方法用来传送实体的主体,一般由客户端向服务器端发送信息,例如提交表格等等向服务器端提交信息。

PUT:传输文件

PUT方法用来传输文件,类似于FTP协议的文件上传一样,在请求报文中包含文件的主体内容,然后请求保存到URI指定的位置上。(HTTP/1.1不带身份验证机制,所以并不安全)

HEAD:获取报文首部

HEAD方法类似于GET方法,只是不返回主体报文,只是返回一个报文首部,用于确认URI的有效性以及资源更新的日期等等。

DELETE:删除文件

DELETE方法用于删除文件,和PUT相反

OPTIONS:询问支持的方法

顾名思义,就是向服务器端询问支持的哪些方法

Cookie状态管理

之前有提到HTTP是无状态协议,它无法对之气发生过的请求和响应进行管理。例如一个登录页面,我们每次打开整个页面都需要重新进行登录,提交我们的身份信息进行登录。而使用了Cookie之后,在客户端会保存Cookie文件,在下次提交请求和响应的过程中,客户端会将Cookie中的信息自动的添加到报文请求中,相当于自动的为我们为我们存储了状态信息。

3.HTTP状态码

当客户端向服务器端发送请求时,状态码用来返回请求结果

2XX成功

200ok

表示客户端的请求被成功的正常处理

204 No Content

表示服务器端接收的请求已经被正常处理。(不返回新资源)

206 Partial Content

客户端对服务器端资源的部分请求

3XX重定向

304 Not Modified

表示客户端发送附带条件的请求时,服务器端允许请求访问资源,但是并未满足条件的情况。

4XX客户端错误

400 Bad Request

请求报文中有语法错误

403 Forbidden

服务器拒绝了请求资源的访问

例如未获得文件系统的访问授权,访问权限出现问题

404 Not Found

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

5XX服务器错误

5xx响应表明服务器本身出现错误

相关文章

  • 图解HTTP之TCP/IP

    图解HTTP协议笔记 HTTP 全名HyperText Transfer Protocol,超文本传输协议。 TC...

  • HTTP 深入探究

    【前言】以下源于慕课网《大话HTTP协议》课程笔记 认识HTTP协议 HTTP 基础[https://www.ji...

  • HTTP协议笔记

    HTTP协议笔记 标签(空格分隔): HTTP,TCP/IP [TOC] 1.网络协议基础知识 TCP/IP协议族...

  • http协议笔记

    一种互联网的实现方式分为5层:实体层,链接层,网络层,传输层,应用层。 一、实体层:是把电脑连接起来的物理手段。 ...

  • HTTP协议笔记

    收集些HTTP协议资料, 做下笔记 HTTP权威指南读书笔记 http://www.cnblogs.com/qcs...

  • http协议笔记

    1.什么是http协议? http协议是一种基于TCP/IP协议,服务器与浏览器进行超文本传输的一种应用层协议,...

  • 【笔记】HTTP协议

    1.HTTP协议是什么? HTTP(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于T...

  • HTTP协议笔记

    HTTP工作原理 HTTP三点注意事项: 每次连接只处理一个请求 只要客户端和服务器知道如何处理的数据内容,任何类...

  • HTTP协议笔记

    请求行GET /POST /ETC 请求头 请求方法 请求体 响应 状态行 HTTP/1.1 200 OK 状...

  • HTTP协议笔记

    HTTP协议 https的实现原理 TCP三次握手

网友评论

      本文标题:HTTP协议笔记

      本文链接:https://www.haomeiwen.com/subject/faxqyttx.html