HTTP复习


HTTP

HTTP 简介

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。。

HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

HTTP 工作原理

HTTP协议工作于客户端-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。

Web服务器有:Apache服务器,IIS服务器(Internet Information Services)等。

Web服务器根据接收到的请求后,向客户端发送响应信息。

HTTP默认端口号为80,但是你也可以改为8080或者其他端口。

HTTP 协议简单介绍

请求

客户端发送一个 HTTP 请求到服务器,请求消息包括以下格式:

请求行(request line)、请求头部(header)、空行和请求数据四个部分组成。

Get 请求例子

> GET / HTTP/1.1
> Host: www.baidu.com
> User-Agent: curl/7.52.1
> Accept: */*

第一部分:请求行,用来说明请求类型,要访问的资源以及所使用的 HTTP 版本。

第二部分:请求头部,紧接着请求行(即第一行)之后的部分,用来说明服务器要使用的附加信息

从第二行起为请求头部,HOST 将指出请求的目的地。User-Agent,服务器端和客户端脚本都能访问它,它是浏览器类型检测逻辑的重要基础。该信息由你的浏览器来定义,并且在每个请求中自动发送等等。

第三部分:空行,请求头部后面的空行是必须的

即使第四部分的请求数据为空,也必须有空行。

第四部分:请求数据也叫主体,可以添加任意的其他数据。

这个例子的请求数据为空。

HTTP与HTTPS的区别

1.HTTP的URL以http:// 开头HTTPS以https://开头
2.HTTP不安全,HTTPS安全
3.HTTP标准端口80,HTTPS标准端口443
4.OSI网络模型里,HTTP工作在应用层,HTTPS安全传输工作在传输层
5.HTTP无法加密,HTTPS对传输的数据进行加密
6.HTTP无需证书,HTTPS需要CA机构颁发SSL证书

常用的HTTP方法

GET:用于请求访问已经被URI(统一资源标识符)识别的资源,通过URL传输给服务器

POST:用于传输信息给服务器,主要功能与GET方法类似,一般推荐POST方式

PUT:传输文件,报文主体包含文件内容,保存到对应的URI位置

HEAD:获得报文首部,与get方法类似不返回报文主体,一般验证URI是否有效

DELETE:删除文件,与post方法相反,删除对应URI位置

OPTIONS:查询相应URI支持的HTTP方法

HTTP状态码

200:请求被正常处理
204:请求被受理但没有资源可以返回
206:客户端只是请求资源的一部分,服务器支队请求的部分资源执行GET方法
301:永久性重定向
302:临时性重定向
303:与302状态码有相似功能,只是它希望客户端在请求一个URI的时候,能通过GET方法重定向到另一个URI上
304:发送附带条件的请求时,条件不满足时返回,与重定向无关
307:临时重定向,与302类似,只是强制要求使用POST方法
400:请求报文语法有误,服务器无法识别
401:请求需要认证
403:请求的对应资源禁止被访问
404:服务器无法找到对应资源
500:服务器内部错误
503:服务器正忙


文章作者: Kuma
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Kuma !
  目录