网络: 应用层

网络资源

  • uri(uniform resource identifier) 统一资源标识符。
  • url(uniform resource location) 统一资源定位符,统指绝对路径。
  • urn(uniform resource name) 统一资源名。

http

报文结构

  • 第一部分简略信息,包含请求方法、url 和协议版本;或者协议版本和状态码
  • 第二部分为请求首部 Header 或者响应首部 Header;
  • 第三部分为内容主体

请求方法

状态码

  • 200:  成功返回响应
  • 301:  永久重定向, 客户端第一次访问此 url 时, 告知客户端以后直接访问新的 url, 该状态保存在浏览器缓存中
  • 302:  临时重定向, 客户端每次访问此 url 时, 告知客户端重定向到新的 url , 后续访问依然访问当前的 url
  • 400:  发送的请求错误, 请求格式错误,或者没有服务器要求的数据
  • 401:  没有权限访问, 当前用户没有权限访问此资源
  • 403:  请求被服务器禁止
  • 404:  请求的 url 不存在, 一般是 url 出错
  • 500:  服务器处理请求出现错误
  • 501:  服务器超出能力之外的方法,例如:请求的方法服务器不支持
  • 504:  来自网关或者代理服务器,请求资源服务器时超时

http 首部

  • 通用首部

  • 请求首部

  • 响应首部

  • 实体首部

长连接与短连接

  • 长连接: 只需要建立一次 tcp 连接就能进行多次 http 通信
  • 短连接: 每有一个http请求就要建立一次tcp连接
    • http/1.1 开始默认是长连接的, 若要断开连接,首部为 Connection : close;
    • 在 http/1.1 之前默认是短连接的, 若要使用长连接, 首部为 Connection : Keep-Alive

无状态协议

  • http 是无状态协议, 它不对请求和响应之间的通信状态进行保存

cookie与session

  • cookie 
    • 客户端第一次发送信息到服务器时, 服务器根据该客户端信息编码加密生成一个 cookie
    • 服务端将此 cookie 发送给客户端, 客户端发送请求时带有此cookie,服务端就可以区分客户端
  • session
    • 客户端第一次发送信息到服务器时, 服务器为客户端创建一个session对象, 它包含了客户端的身份信息, ​​​​​​ 同时为session生成一个sessionId
    • 服务端将sessionId传给客户端, 客户端发送请求时带此sessionId, 服务端就可以区分客户端
  • 发送
    • 服务端通过set-cookie 首部将cookie 和sessionId发送给客户端
    • 客户端通过cookie首部将将cookie 和sessionId发送给服务端

https

http安全问题

  • 使用明文通信,内容可能会被窃听
  • 不验证通信方的身份,通信方的身份有可能遭遇伪装
  • 无法证明报文的完整性,报文有可能遭篡改

通过 ssl(Secure Sockets Layer)/tls(Transport Layer Security) 的方式使 http 变成了安全的https

策略

  • 数据加密
  • 数字证书认证
  • 通过 ssl/tls 报文摘要功能检验报文完整性

加密

  • 对称加密:加密和解密使用同一密钥. 运算速度快, 但无法安全地将密钥传输给数据接收方.
  • 非对称加密:加密和解密使用不同密钥. 公钥加密, 私钥解密, 安全但速度慢 
  • 两者结合: 使用非对称加密去加密对称加密的密钥

                                          

数字证书

数字证书认证机构 (CA, Certificate Authority) 是客户端和服务器双方都信任的第三方机构

  • 服务器向机构申请数字证书, 机构对数据做数字签名, 然后将数据和数字签名打包在一起, 做成数字证书, 发送给服务端
  • https通信时, 服务器把数字证书发给客户端, 客户端取得其中的数据和数字签名, 使用数字证书机构的公开密钥验证数据和数字签名是否合法

  完整性验证: 加密   +  摘要检验  + 认证

http与https

  • https: 使用价格昂贵; 速度稍慢;默认端口为 443; 通信安全。
  • http: 免费; 速度稍快; 默认端口为80; 通信不安全

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/282096.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣 739. 每日温度 496.下一个更大元素 I

739. 每日温度 穷举的话就是从当前元素往后找比自己大的第一个元素,时间复杂度O(n^2)。 然后在看单调栈的解法。 就能感受出单调栈的巧妙。这道题主要熟悉单调栈这个数据结构。 单调栈:分为单调递增栈和单调递减栈。单调递增:栈顶元素总是小…

Linux-网络层IP协议、链路层以太网协议解析

目录 网络层:IP协议地址管理路由选择 链路层 网络层: 网络层:负责地址管理与路由选择 — IP协议,地址管理,路由选择 IP协议 数据格式: 4位协议版本:4-ipv4协议版本 4位首部长度:以…

JavaEE企业开发新技术3

目录 2.11 Method的基本操作-1 文字性概念描述 代码: 2.12 Method的基本操作-2 2.13 Method的基本操作-3 2.14 数组的反射操作-1 文字性概念: 代码: 2.15 数组的反射操作-2 学习内容 2.11 Method的基本操作-1 文字性概念描述 Me…

python 深度学习 记录遇到的报错问题12

本篇继python 深度学习 记录遇到的报错问题11_undefined symbol: __nvjitlinkadddata_12_1, version-CSDN博客 目录 一、AttributeError: module ‘tensorflow‘ has no attribute ‘app‘ 二、AttributeError: module tensorflow has no attribute placeholder 三、Attribu…

Qt登录页面

#include "mywidget.h" #include "ui_mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent), ui(new Ui::MyWidget) {ui->setupUi(this);//接收动图QMovie *mv new QMovie(":/pictrue/luori.gif");ui->loglab->setMovie(…

zabbix6.4监控mysql数据库

目录 一、前提二、配置mysql数据库模板三、配置监控的mysql主机 一、前提 已经搭建好zabbix-server 在需要监控的mysql服务器上安装zabbix-agent2 上述安装步骤参考我的上篇文章:通过docker容器安装zabbix6.4.12图文详解(监控服务器docker容器&#xf…

《2024年中国企业CRM软件国产替代趋势研究报告》重磅首发

编者按 近日,Salesforce移动应用在中国大陆苹果应用商店的下架,预示着今年CRM国产化替代即将迎来高潮。CRM作为距离业务最近的软件,被公认为是企业数字化转型、高质量发展的核心系统之一。“企业如何选择一款真正满足自身业务需求的本土化CR…

线程安全的List之CopyOnWriteArrayList

系列文章目录 文章目录 系列文章目录前言 前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 ArrayList是线程不…

嵌入式C语言(十)

内建函数 这篇我们来看看什么是内建函数欸? 什么是内建函数 内建函数,顾名思义,就是编译器内部实现的函数。**这些函数和关键字一样,可以直接调用,**无须像标准库函数那样,要先声明后使用。 **内建函数…

ChatGPT是什么,怎么使用,需要注意些什么?

一、ChatGPT 是什么? ChatGPT,全称聊天生成预训练转换器(Chat Generative Pre-trained Transformer),是 OpenAI 开发的人工智能(AI)聊天机器人程序,于2022年11月推出。该程序使用基于GPT-3.5、GPT-4架构的…

权限管理系统-0.6.0

七、员工端审批 员工端审批的大致流程如下图: 这个模块目的是实现员工在微信端的审批提交和处理功能,为了与之前的管理系统区分开,新建一个controller完成这些功能。 7.1 查询审批分类和审批模板 7.1.1 后端接口 //controller Api(tags …

elementUI Tree 树形控件单选实现

文章目录 展示效果代码实现elementui Tree树形控件其他详细数据 在Element UI中,树形控件(el-tree)本身不支持单选功能。但是,你可以通过监听节点点击事件并手动更新选中状态来实现单选树。 以下是一个简单的例子,展示…

【Spring 篇】SpringMVC拦截器:给你的应用增添色彩

嗨,亲爱的小伙伴们!欢迎来到这段关于SpringMVC拦截器的奇妙之旅。今天我们要一探究竟,深入挖掘拦截器的神秘面纱,看看它是如何在你的应用中悄然发挥作用的。别怕,我会用最通俗易懂的语言,一步一步带你走进这…

【合合TextIn】深度解析智能文档处理技术与应用

目录 一、智能文档处理介绍 二、文档格式解析 三、图像增强技术解析 四、传统文字识别OCR技术解析 五、深度学习OCR技术解析 六、深度学习版面分析技术解析 七、文档分类 八、信息抽取 九、系统集成:将IDP处理后的数据集成到企业系统 结论 一、智能文档处…

下载 macOS 系统安装程序的方法

阅读信息: 版本:0.4.20231021 难度:1/10 到 4/10 阅读时间:5 分钟 适合操作系统:10.13, 10.14, 10.15, 11.x, 12.x,13.x, 14 更新2023-10-21 添加Mist的介绍支持版本的更新,13.x&#xff0…

Css提高——Css3的新增选择器

目录 1、Css3新增选择器列举 2、属性选择器 2.1、语法 2.2、代码: 2.3、效果图 3、结构伪类选择器 3.1、语法 3.2、代码 3.3、效果图 3.4、nth:child(n)的用法拓展 nth-child(n)与nth-of-type&#x…

MAC 帧(数据链路层)

目录 一、MAC帧的格式 二、无效的帧 三、帧间最小间隔 四、帧的发送与接收 五、小结 一、MAC帧的格式 • 常用的以太网 MAC 帧格式有两种标准 : DIX Ethernet V2 标准; IEEE 的 802.3 标准。 • 最常用的 MAC 帧是以太网 V2 的格式。 二、…

excel文件可以转成word文件吗?汇帮PDF转换器帮你实现excel转word

将Excel文件转换为Word文档是一个相对简单的任务,但在执行过程中需要注意一些细节,以确保转换后的文档格式正确、内容清晰。下面将详细介绍用汇帮PDF转换器将Excel转Word的步骤和注意事项。 一、Excel文件准备 在进行转换之前,首先确保Excel…

Linux部署MySQL

Linux部署MySQL5.7.17 mkdir /opt/mysql cd /opt/mysql#mysql下载官网: #https://downloads.mysql.com/archives/community/ #下载server、client、lib和common wget https://downloads.mysql.com/archives/get/p/23/file/mysql-community-server-5.7.17-1.el7.…

做抖店不知道怎么找达人?聊聊我是怎么找达人带货的,多看多做!

大家好,我是电商花花。 找不到合适的达人带货?不知道怎么找达人带货?多半都是没有用心去找达人带货,因为现在抖音上遍地都是达人,遍地都是达人在直播带货,在短视频带货。 而达人不是说不缺品,…