协议HTTP

1、了解HTTP

HTTP是超文本传输协议,是TCP/IP协议的一个应用层协议。

超文本:指的是HTML、css、JavaScript和图片等。

HTTP协议是用于用户端和服务端之间的通信,用于用户端和服务器端之间的通信有HTTP协议和TCP/IP协议族在内的其他众多协议。(客户端:请求访问文本或图片等资源的一方;服务端:负责接收,提供响应的一方)

2、HTTP特点

HTTP超文本传输协议是一个基于请求和响应模式的、无状态的、应用层的协议,常基于TCP的连接方式。

HTTP都是由客户端发起请求的,并且由服务器端回应响应信息的。

  • 简单快速,客户端每次向服务器发出请求的时候只需要传递请求和路径;
  • 灵活,HTTP允许传输任意类型的数据对象(音频,视频等);
  • 无状态,每次HTTP请求都是独立的,任何两个请求之间是没有必然联系的;
  • 无连接,每次服务器在处理完客户端的请求后,并收到客户的应答后,就断开了通信,当客户端再次发送请求时就是一个新的连接;

3、HTTP协议格式

我们可以把HTTP协议当作一种客户端和服务器端相互交流的语言。

一个HTTP客户端在向服务器发送请求时会携带请求消息,服务器端会根据客户端发送过来的请求消息了解客户端的需求,从而服务器端做出响应,发送响应信息给客户端。

客户端------>服务器端(发送请求)

客户端请求消息:请求方法、URL、协议版本、请求头部、头部字段名、值、请求数据。

服务端------>客户端(发送响应)

服务器端响应消息:状态行、消息报头、空行、响应正文。

我们常说的“网址”就是URL。

例:

HTTP是基于TCP/IP协议的应用层协议,不涉及数据包传输,规定了客户端和服务端之间的通信方式,默认使用80端口。

请求报文响应报文
RequestResponce
请求行(方法+URL+版本号)状态行(版本号+状态码+状态码描述)
请求报头(格式: 属性名:属性值 )响应报头
空行空行
请求正文请求正文

4、HTTP请求方法

常见的请求方法是:GET、POST

GET:获取资源数据(请求指定页面的信息,并返回实体主题)

POST:传输实体主体(向指定资源提交数据请求处理)

PUT:传输文件(从客户端向服务器传送数据取代指定文档的内容)

DELETE:删除文件(请求服务器删除指定的页面)

HEAD:获得报文首部

OPTIONS:询问支持的方法(允许客户端查看服务器的性能)

TEACE:追踪路径(回显服务器收到的请求,主要用于测试或诊断)

CONNECT:要求用隧道协议连接代理(能够将连接改为管道方式的代理服务器)

5、HTTP状态码

HTTP状态码:用以表示网页服务器HTTP响应状态的3位数字代码

其作用就是web服务器用来告诉客户端,当前的网页请求发生什么事情了,或者是当前web服务器端的响应状态。【HTTP状态码是服务器端返回给客户端的】

常见的状态码:200、301、302、304、400、403、404、500

200(OK):服务器响应成功。

301(Redirect):永久性的重定向。

302(Redirect):临时性跳转(通常会重定向到一个URL)。

304(Not Modified):被请求的资源内容没有发生更改。

400(Bad Request):客户端请求有语法错误,不能被服务器所理解。

403(Forbidden):服务器已经接收请求,但是被拒绝执行。

404(Not Found):服务器上没有该资源,或者说服务器上没有找到客户端请求的资源。

500(Internal Server Error):服务器错误(一般是程序出错)

6、HTTP工作原理

  • 客户端连接到Web服务器
  • 发送HTTP请求
  • 服务器接收请求并返回HTTP响应
  • 释放连接TCP连接
  • 客户端浏览器解析HTML内容

7、HTTP和HTTPS区别

简单理解:http传送数据(包括账号和密码),都是明文传送。https多了层加密解密层,在网络里传输的都是经过加密的数据。

  • http端口是80,https端口是443;
  • http是无状态、无连接的,https是基于http开发的,它使用安全套接字层(SSL)进行信息交换;
  • 在网络模型中,http工作于应用层,https工作于传输层;
  • http无需加密,http会对传输的数据进行加密。

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值