计算机网络——HTTP与HTTPS协议

HTTP与HTTPS是应用层的协议。

目录

一、HTTP

二、HTTPS

三、HTTP与HTTPs对比

[四、HTTP/1.0 HTT/1.1 HTTP/2有什么区别](#四、HTTP/1.0 HTT/1.1 HTTP/2有什么区别)

五、HTTP常用请求方法?get/post区别?

六、HTTP的工作过程

七、HTTPS的工作过程

八、Cookie、Session、Token


一、HTTP

超文本传输协议(Hypertext Transfer Protocol,HTTP )是一个简单的请求-响应协议,它通常运行在TCP之上,是万维网WWW(World Wide Web)的数据通信的基础。 《百度百科》

二、HTTPS

超文本传输安全协议(Hypertext Transfer Protocol Secure,HTTPS )是以安全 为目标的 HTTP 通道,在HTTP的基础上加入SSL,通过传输加密和身份认证保证了传输过程的安全性。

SSL(Secure Socket Layer)安全套接层是Netscape公司率先采用的网络安全协议。它是在传输通信协议(TCP/IP)上实现的一种安全协议,采用公开密钥技术。 《百度百科》

三、HTTP与HTTPs对比

①HTTP 信息是明文传输(未加密),存在安全风险的问题。HTTPS 主要由两部分组成:HTTP + SSL / TLS,也就是在 HTTP 上又加了一层处理加密信息的模块

②HTTP 默认端口号是 80,HTTPS 默认端口号是 443。

③HTTPS 协议可认证用户和服务器,确保数据发送到正确的客户机和服务器。

四、HTTP/1.0 HTT/1.1 HTTP/2有什么区别

*下图来自公众号 小林coding

五、HTTP常用请求方法?get/post区别?

①GET请求用来从服务器获取数据(文本、页面、图片视频等),POST请求用来发送/提交数据(表示示向服务器申请创建新的资源或对已有的资源进行修改)。

②GET请求将请求参数拼接到URL上进行参数传递,而POST则是将请求参包装到HTTP报文的请求体(body)中。

③从请求的大小看,GET请求的长度受限于浏览器和服务器对URL长度的限制。

六、HTTP的工作过程

① 客户端首先通过DNS(域名系统)解析目标服务器的IP地址,然后通过TCP/IP协议与服务器建立连接。通常,连接使用的端口号是80(HTTP)或443(HTTPS)。

② 建立连接后,客户机发送一个请求给服务器。请求具有专门的请求格式和请求报文。

③ 服务器接到请求后,解析请求,根据请求方法和资源路径给予相应的响应信息。响应也有专门的格式与响应报文。

④ 客户端接收到服务器的响应后,解析响应内容。如果响应是一个HTML页面,浏览器会渲染并显示给用户。

⑤ 关闭连接。HTTP/1.0每个请求/响应后都会关闭TCP连接。HTTP/1.1允许在同一个TCP连接上发送多个请求和响应,从而提高效率。

七、HTTPS的工作过程

① 客户端输入一个HTTPS网址,浏览器会向目标服务器发起连接请求,指定使用HTTPS协议。

② 服务器收到请求后,会将SSL/TLS证书发送给客户端。

③ 客户端检查证书是否由可信的证书颁发机构(CA)签发,并确认证书是否在有效期内,证书中的域名是否与用户请求的域名匹配。如果证书不合法,浏览器会向用户发出警告。

④ 如果证书验证通过,使用会话密钥进行加密和解密。

⑤ 客户端和服务器通过加密的通道开始交换数据。所有通过HTTPS传输的数据都经过加密,确保数据的机密性、完整性和真实性。

⑥ 当通信完成后,客户端和服务器会终止SSL/TLS连接。这时,双方会销毁会话密钥,结束加密通信。

八、Cookie、Session、Token

http协议的每一次访问都是无状态 的,也就是每个请求都是完全独立的,服务端无法确认当前访问者的身份信息,无法分辨上一次的请求发送者和这一次请求的发送者是不是同一个客户端。需要一个状态用于告诉服务端前后两个请求是否来自同一个浏览器 。这个状态就需要通过 cookie 或者 session 来实现。经常简单APP或者小程序询问是否允许授予权限(获取昵称、头像、地区、性别等个人信息)而实现授权的方式就是:cookie、session、token.

(1) Cookie由服务器发送到用户浏览器,并进行保存到本地,它会在浏览器下次向同一服务器再发起请求时被再一次被带到并发送到服务器上面。

(2) Session存储在服务器端,sessionId(session 的唯一标识信息) 会被存储到客户端的cookie 中。服务器拿到cookie中的信息后会取session中验证信息

(3) Token是访问资源接口(API)时所需要的资源凭证。Token 使服务端无状态化,不会存储会话信息。token可以用于标识用户身份、授权访问权限或传递安全信息。
Cookie 和 Session 的区别
安全性 : Session 比 Cookie 安全,Session 是存储在服务器端的,Cookie 是存储在客户端的。
有效期不同 : Cookie 可设置为长时间保持,如默认登录功能,Session 一般有效时间较短,如某些网页版邮箱登上半小时没操作就会断开,提示重新登录。
存储大小不同 : 单个 Cookie 保存的数据不能超过 4K,Session 可存储数据远高于 Cookie,但是当访问量过多,会占用过多的服务器资源。
存取值的类型不同:Cookie 只支持存字符串数据,想要设置其他类型的数据,需要将其转换成字符串,Session 可以存任意数据类型。

相关推荐
长安初雪4 小时前
Request 和 Response 万字详解
计算机网络·servlet
ZachOn1y6 小时前
计算机网络:运输层 —— 运输层概述
网络·tcp/ip·计算机网络·运输层
黎鹤舞8286 小时前
计算机网络易混淆知识点串记
计算机网络
乌龟跌倒7 小时前
网络层3——IP数据报转发的过程
网络·tcp/ip·计算机网络·智能路由器
程序员小予9 小时前
如何成为一名黑客?小白必学的12个基本步骤
计算机网络·安全·网络安全
安徽京准9 小时前
京准同步:GPS北斗卫星授时服务器发展趋势介绍
服务器·网络·计算机网络·授时服务器·gps北斗卫星授时·北斗授时服务器·ntp网络授时服务器
原野心存9 小时前
网络模型——二层转发原理
网络·计算机网络·智能路由器·二层转发原理
田三番13 小时前
使用 vscode 简单配置 ESP32 连接 Wi-Fi 每日定时发送 HTTP 和 HTTPS 请求
单片机·物联网·http·https·嵌入式·esp32·sntp
dulu~dulu13 小时前
查缺补漏----用户上网过程(HTTP,DNS与ARP)
网络·网络协议·http
乌龟跌倒13 小时前
网络层5——IPV6
网络·计算机网络·智能路由器