02 2021 档案
摘要:一、. 会话聊天模式——非对称算法 1. 会话连接建立 2. 客户端和服务器端会话 二、. 会话聊天模式——非对称算法+对称算法 1. 会话连接建立 同上 2. 客户端和服务器端会话 这便是非对称算法和对称算法的综合使用。 至此,结束。
阅读全文
摘要:一、HTTPS 建立连接 当你在浏览器地址栏里键入“https”开头的 URI,再按下回车,会发生什么呢? 浏览器首先要从 URI 里提取出协议名和域名。因为协议名是“https”,所以浏览器就知道了端口号是默认的 443,它再用 DNS 解析域名,得到目标的 IP 地址,然后就可以使用三次握手与网
阅读全文
摘要:上一讲中我们学习了对称加密和非对称加密,以及两者结合起来的混合加密,实现了机密性。 但仅有机密性,离安全还差的很远。 黑客虽然拿不到会话密钥,无法破解密文,但可以通过窃听收集到足够多的密文,再尝试着修改、重组后发给网站。因为没有完整性保证,服务器只能“照单全收”,然后他就可以通过服务器的响应获取进一
阅读全文
摘要:一、基本概念 实现机密性最常用的手段是“加密”(encrypt),就是把消息用某种方式转换成谁也看不懂的乱码,只有掌握特殊“钥匙”的人才能再转换出原始文本。 这里的“钥匙”就叫做“密钥”(key),加密前的消息叫“明文”(plain text/clear text),加密后的乱码叫“密文”(ciph
阅读全文
摘要:一、为什么要有 HTTPS?简单的回答是“因为 HTTP 不安全”。 由于 HTTP 天生“明文”的特点,整个传输过程完全透明,任何人都能够在链路中截获、修改或者伪造请求 / 响应报文,数据不具有可信性。 既然 HTTP“不安全”,那什么样的通信过程才是安全的呢? 通常认为,如果通信过程具备了四个特
阅读全文
摘要:一、缓存代理服务 还是以生鲜超市为例子: 便利店作为超市的代理,生意非常红火,顾客和超市双方都对现状非常满意。但时间一长,超市发现还有进一步提升的空间,因为每次便利店接到顾客的请求后都要专车跑一趟超市,还是挺麻烦的。 干脆这样吧,给便利店配发一个大冰柜。水果海鲜什么的都可以放在冰柜里,只要产品在保鲜
阅读全文
摘要:在前面讲 HTTP 协议的时候,我们严格遵循了 HTTP 的“请求 - 应答”模型,协议中只有两个互相通信的角色,分别是“请求方”浏览器(客户端)和“应答方”服务器。今天,我们要在这个模型里引入一个新的角色,那就是HTTP 代理。 引入 HTTP 代理后,原来简单的双方通信就变复杂了一些,加入了一个
阅读全文
摘要:缓存(Cache)是计算机性能的一个重要概念。 由于链路漫长,网络时延不可控,浏览器使用 HTTP 获取资源的成本较高。所以,非常有必要把“来之不易”的数据缓存起来,下次再请求的时候尽可能地复用。 一、服务器的缓存控制(服务器负责控制,浏览器负责缓存) 我们以生鲜速递作为例子说一下。 如果我现在想要
阅读全文
摘要:“超文本”里含有“超链接”,可以从一个“超文本”跳跃到另一个“超文本”,对线性结构的传统文档是一个根本性的变革。能够使用“超链接”在网络上任意地跳转也是万维网的一个关键特性。它把分散在世界各地的文档连接在一起,形成了复杂的网状结构,用户可以在查看时随意点击链接、转换页面。由浏览器的使用者主动发起的,
阅读全文
摘要:前面有说到HTTP的性能,七个字概括:“不算差,不够好”,还了解到有“队头阻塞”这一说法,这节学习的重点就是围绕“队头阻塞'这一说法来进行。 一、短连接 HTTP传输数据基于 TCP/IP,每次发送请求前需要先与服务器建立连接,收到响应报文后会立即关闭连接。客户端与服务器的整个连接过程很短暂,不会与
阅读全文
摘要:一、数据压缩 上一篇博文有说到,如果文件过大,通常浏览器在发送请求时都会带着“Accept-Encoding”头字段,里面是浏览器支持的压缩格式列表,例如 gzip、deflate、br 等,这样服务器就可以从中选择一种压缩算法,放进“Content-Encoding”响应头里,再把原数据压缩后发给
阅读全文
摘要:我们在前面学到了HTTP报文结构,是由header+body组成。不过我们前面学的知识都还只是停留在header部分,所以现在我们要开始研究body部分。这便引出了HTTP的实体数据概念。 1. 数据类型和编码 在 TCP/IP 协议栈里,传输数据基本上都是“header+body”的格式。但 TC
阅读全文
摘要:简单、灵活、易于扩展 首先,HTTP 最重要也是最突出的优点是“简单、灵活、易于扩展”。 应用广泛、环境成熟 HTTP 协议的另一大优点是“应用广泛”,软硬件环境都非常成熟。 无状态 看过了两个优点,我们再来看看一把“双刃剑”,也就是上一讲中说到的“无状态”,它对于 HTTP 来说既是优点也是缺点。
阅读全文
摘要:灵活可扩展 首先, HTTP 协议是一个“灵活可扩展”的传输协议。 可靠传输 第二个特点, HTTP 协议是一个“可靠”的传输协议。 应用层协议 第三个特点,HTTP 协议是一个应用层的协议。 请求 - 应答 第四个特点,HTTP 协议使用的是请求 - 应答通信模式。 无状态 第五个特点,HTTP
阅读全文
摘要:URI,统一资源标识符(Uniform Resource Identifier)。因为它经常出现在浏览器的地址栏里,所以俗称为“网络地址”,简称“网址”。 一、URI格式 URI 本质上是一个字符串,这个字符串的作用是唯一地标记资源的位置或者名字。 下面的这张图显示了 URI 最常用的形式,由 sc
阅读全文
摘要:一、今天要说的就是请求头里的请求方法。 一般最常见的是GET和POST方法,但是肯定远远不止这俩,如下所示: GET:获取资源,可以理解为读取或者下载数据;HEAD:获取资源的元信息;POST:向资源提交数据,相当于写入或上传数据;PUT:类似 POST;DELETE:删除资源;CONNECT:建立
阅读全文
摘要:一、报文结构 HTTP请求报文和响应报文结构基本相同,都是由以下三个部分组成: 1. 起始行:描述请求或者响应头的基本信息 2. 头部字段集合:使用key-value形式描述报文 3. 消息正文:实际传输的数据,这里不一定是纯文本格式,还能是图片、音频、视频等格式,在前面的文章中有学过。消息正文又称
阅读全文
摘要:现在我们来探索一次HTTP请求以及应答整个过程 使用IP地址访问web服务器,然后利用wireshark捕捉这一过程 一、准备工作 1. 首先运行 www 目录下的“start”批处理程序,启动本机的 OpenResty 服务器,启动后可以用“list”批处理确认服务是否正常运行。 2. 然后打开w
阅读全文
摘要:纸上得来终觉浅,我们现在就要在 Windows 系统上实际操作,用几个应用软件搭建出一个“最小化”的 HTTP 实验环境,为后续学习搭建好环境。 一、搭建此环境要用到的工具如下: Win10系统 Wireshark Chrome/Firefox Telnet OpenResty Wireshark是
阅读全文
摘要:一、域名的形式 1. 域名的概念:域名是一个有层次的结构,是一串用“.”分隔的多个单词,最右边的被称为“顶级域名”,然后是“二级域名”,层级关系向左依次降低。最左边的是主机名,通常用来表明主机的用途,比如“www”表示提供万维网服务、“mail”表示提供邮件服务,不过这也不是绝对的,名字的关键是要让
阅读全文
摘要:这节内容的探讨来自对四层负载均衡、八层负载均衡、二层路由、三层转发等等概念的启发。 一、TCP/IP网络分层模型,总结如下: TCP/IP分层结构是从下往上以此数层次,下一层是上一层的基础。 二、OSI网络分层模型(开放式系统互连参考模型)如下: 二者相比来说有什么异同呢? 1. OSI网络分层模型
阅读全文
摘要:与HTTP相关的各种协议在下面图中都列出来了,现在就根据每一种协议进行详细学习。 一、TCP/IP TCP/IP协议是一系列网络通信协议的统称,其中最核心的是TCP和IP,其他还有UDP、ICMP等等,共同构成了一个复杂但是有序的协议栈 。 这个协议栈有四层,最上层是应用层,最下面是链接层,TCP和
阅读全文
摘要:HTTP相关各种概念介绍见如下图,我们将从以下几个大点分别进行学习。下面这些点有一个共同点,都是和HTTP有关系的各项应用技术,偏向于实际应用。着重介绍右边部分,左边部分因为和HTTP核心协议不算太接近,因此就了解即可。 一、网络世界 网络世界由大大小小 很多个网络组成,小至几十台机器组成的局域网,
阅读全文
摘要:一、HTTP是什么? HTTP是超文本传输协议。何为超文本传输协议,接下来我们将超文本传输协议切成三部分分别学习,首先是协议、接着是传输,最后是超文本。 1. 协议 HTTP是一个协议,那么协议又是什么呢?协议并不局限于计算机世界,现实生活中也存在协议。例如,刚毕业时我们要签的三方协议,以及租房的时
阅读全文
摘要:一、HTTP含义:即超文本传输协议,用来传输超文本。 二、HTTP发展流程 1. HTTP/0.9 :结构简单,采用纯文本格式传输,奠定HTTP发展的基础。 2. HTTP/1.0:APACHE的出现,简化了HTTP服务器的搭建工作。同期发明了JPG格式,以及MP3格式,这一举动吸引了很多人对滑联网
阅读全文
摘要:详细教程见:https://blog.csdn.net/weixin_41466575/article/details/105326230 注意一下执行命令: mongod -dbpath db目录 mongo 开两个dos窗口,分别执行俩指令。
阅读全文
摘要:一、创建表,id自增长,设置一个字段显示系统时间 CREATE TABLE tokenLogin.trasf_record( `id` int NOT NULL AUTO_INCREMENT, `username` varchar(50) default null, `account_time` T
阅读全文
摘要:我们在银行模拟系统1.0基础上对redis进行封装,银行模拟1.0系统项目代码地址以及详细讲解见网址:https://www.cnblogs.com/yeyuting/p/14412924.html 银行模拟系统2.0 完整代码见地址:https://github.com/yeyuting-1314
阅读全文
摘要:一、问题描述: 执行代码: valueOperations.set(user1.getUserName() , user1); 将对象存入redis,存入后变成了如下所示的样子。 二、原因分析 我们首先在实体类中实现了序列化接口,这时,User对象序列化为了字节流,传输进入redis,但是在进入re
阅读全文
摘要:一、问题描述 在实现redis缓存对象的时候执行语句valueOperations.set(user1.getUserName() , user1); 时候出现了这个错误 二、原因分析 : 经百度查询是说需要序列化接口,要缓存的 Java 对象必须实现 Serializable 接口,因为 Spri
阅读全文
摘要:实现银行系统的余额查询在我们之前写的token认证登陆功能完成的基础上实现,token认证登陆功能代码地址:https://github.com/yeyuting-1314/selectFuPan_tokenAndRedisfengzhuagn.git 银行系统余额查询、转账、入账、出账功能项目代码
阅读全文
摘要:在最后的检查阶段,果然还是发现项目存在一系列的问题,其中最主要的是,之前项目中redis存储数据时候,token是一个key,token值是一个value;authorities是一个key,对应角色又是一个value,而且登陆用户对应的资源在用户登陆的时候就要获取到,进而存储到redis中,这样做
阅读全文
摘要:在我们的学习大全中,我们终于将一整个项目完整的实现了,写完后我们还要做一件很重要的事情,就是复盘,跟着之前的笔记博客,从最开始的步骤开始,再次实现整个项目过程。 一、单纯的实现用户的增删改查。 我们对数据库表单进行重现,数据库名字名为selectFuPan,数据库中各个创建如下: CREATE TA
阅读全文
摘要:Springboot+Mybatis+redis+postman项目实战总目录* 第二篇章:用户角色权限访问控制 SpringBoot+Mybatis+PostMan(十):用户角色权限访问控制三(禁用session、启用token并集成redis) 在上一篇文章中,对于用户角色权限访问控制实现,我
阅读全文
摘要:Springboot+Mybatis+redis+postman项目实战总目录* 第二篇章:用户角色权限访问控制 SpringBoot+Mybatis+PostMan(十):用户角色权限访问控制三(禁用session、启用token并集成redis) 在实现用户角色控制后,接下来我们将资源整理放入数
阅读全文
摘要:工具:idea2019 在很多时候,我们需要对我们的项目进行依赖打包,最后打包效果如下: 接下来,我们进行依赖打包操作。 1. 首先进入项目,进入Project Structure 主页面,然后跟着截图进行如下操作。 2. 在跳出来的页面中进行相关设置,对main class进行配置,以及后面两栏,
阅读全文

浙公网安备 33010602011771号