草庐IT

【网络】https单向认证和双向认证

前言之前面试的时候,面试官问我了解过https的双向认证吗?当时,的确不理解。不过没关系,现在就来补上。正文  1.单向认证    还是有必要先说下单向认证,单向认证是我刚开始接触https的时候就了解到的。下面看一下执行流程图   (图是网上找的)    再用文字描述下:      首先建立链接 ->验证服务端身份->用服务端公钥加密得到后期通信用的密钥->服务端用私钥解密,拿到密钥--> 双方使用密钥通信      在上面这个过程中,我们可以看到仅仅是验证了服务端的身份,如果有人冒充了客户端,那该怎么办,就是下面要说的双向认证。   2.https双向认证    首先看图      较于单

【网络】https单向认证和双向认证

前言之前面试的时候,面试官问我了解过https的双向认证吗?当时,的确不理解。不过没关系,现在就来补上。正文  1.单向认证    还是有必要先说下单向认证,单向认证是我刚开始接触https的时候就了解到的。下面看一下执行流程图   (图是网上找的)    再用文字描述下:      首先建立链接 ->验证服务端身份->用服务端公钥加密得到后期通信用的密钥->服务端用私钥解密,拿到密钥--> 双方使用密钥通信      在上面这个过程中,我们可以看到仅仅是验证了服务端的身份,如果有人冒充了客户端,那该怎么办,就是下面要说的双向认证。   2.https双向认证    首先看图      较于单

【Maui正式版】创建可跨平台的Maui程序,以及有关依赖注入、MVVM双向绑定的实现和演示

 前言:Maui终于在昨天(2022年8月9日)推送出来了。今儿就迫不及待来把玩一下先。A、我本地已有VS2022,不过版本比较老,此处选择更新。工具->获取功能和更新里面,可以获取到新版本更新。 B、最新版本是17.3.0,我本地只有17.1.1,选择更新。 C、让网络飞一会儿。 1、更新完毕,打开VS,创建一个新的Maui项目(.NETMAUI应用) 2、创建成功以后,右边可以看到如图所示的起始项目。Platforms里面,是该项目支持的平台环境类型,包括安卓、苹果、windows桌面等。  3、直接运行,走一个。默认情况下,启动为Windows桌面客户端APP的形式。 4、项目的一些层级

【Maui正式版】创建可跨平台的Maui程序,以及有关依赖注入、MVVM双向绑定的实现和演示

 前言:Maui终于在昨天(2022年8月9日)推送出来了。今儿就迫不及待来把玩一下先。A、我本地已有VS2022,不过版本比较老,此处选择更新。工具->获取功能和更新里面,可以获取到新版本更新。 B、最新版本是17.3.0,我本地只有17.1.1,选择更新。 C、让网络飞一会儿。 1、更新完毕,打开VS,创建一个新的Maui项目(.NETMAUI应用) 2、创建成功以后,右边可以看到如图所示的起始项目。Platforms里面,是该项目支持的平台环境类型,包括安卓、苹果、windows桌面等。  3、直接运行,走一个。默认情况下,启动为Windows桌面客户端APP的形式。 4、项目的一些层级

vue2.0 双向绑定原理分析及简单实现

Vue用了有一段时间了,每当有人问到Vue双向绑定是怎么回事的时候,总是不能给大家解释的很清楚,正好最近有时间把它梳理一下,让自己理解的更清楚,下次有人问我的时候,可以侃侃而谈?。一、首先介绍Object.defineProperty()方法//直接在一个对象上定义一个新属性,或者修改一个已经存在的属性,并返回这个对象Object.defineProperty(obj,prop,descriptor)参数obj需要定义属性的对象。prop需被定义或修改的属性名。descriptor需被定义或修改的属性的描述符。1.1属性描述符默认值属性默认值说明configurablefalse描述属性是否可

vue2.0 双向绑定原理分析及简单实现

Vue用了有一段时间了,每当有人问到Vue双向绑定是怎么回事的时候,总是不能给大家解释的很清楚,正好最近有时间把它梳理一下,让自己理解的更清楚,下次有人问我的时候,可以侃侃而谈?。一、首先介绍Object.defineProperty()方法//直接在一个对象上定义一个新属性,或者修改一个已经存在的属性,并返回这个对象Object.defineProperty(obj,prop,descriptor)参数obj需要定义属性的对象。prop需被定义或修改的属性名。descriptor需被定义或修改的属性的描述符。1.1属性描述符默认值属性默认值说明configurablefalse描述属性是否可

单向绑定vs双向绑定、单向数据流vs双向数据流

参考文章:http://www.qb5200.com/article/482839.html单双向绑定指的是View层跟Model层之间的映射关系单向绑定vs双向绑定react采用单向绑定,vue采用单向绑定和双向绑定。在React中Veiw发生改变,用户通过发生Actions进行处理,Actions通过setState进行更新State,State更新后触发View更新,可以看出View不能直接修改State,必须通过Actions来进行操作,这样更加清晰可见单向绑定的优点在于清晰可控,缺点则在于模板代码过多。vue同时支持单向绑定和双向绑定单向绑定:插值形式{{data}},v-bind也

单向绑定vs双向绑定、单向数据流vs双向数据流

参考文章:http://www.qb5200.com/article/482839.html单双向绑定指的是View层跟Model层之间的映射关系单向绑定vs双向绑定react采用单向绑定,vue采用单向绑定和双向绑定。在React中Veiw发生改变,用户通过发生Actions进行处理,Actions通过setState进行更新State,State更新后触发View更新,可以看出View不能直接修改State,必须通过Actions来进行操作,这样更加清晰可见单向绑定的优点在于清晰可控,缺点则在于模板代码过多。vue同时支持单向绑定和双向绑定单向绑定:插值形式{{data}},v-bind也

记一次有意思的业务实现 → 单向关注是关注,双向关注则成好友

开心一刻  有个问题一直困扰着我:许仙选择了救蛇,为什么杨过却选择救雕(而不救蛇)  后面想想,其实杨过救神雕是有原因的,当年神雕和巨蛇打架的时候  雕对杨过说:杀蛇,杀蛇,杀蛇!  蛇对杨过说:杀雕,杀雕,杀雕!  杨过果断选择了杀蛇业务场景  业务描述  业务上有这样的需求,张三、李四两个用户,如果互相关注则成为好友  设计上有两张表,关注关系表: tbl_follow   朋友关系表: tbl_friend   我们以张三关注李四为例,业务实现流程是这样的    1、先查询李四有没有关注张三    2、如果李四关注了张三,则成为好友,往 tbl_friend 插入一条记录;如果李四没有关

记一次有意思的业务实现 → 单向关注是关注,双向关注则成好友

开心一刻  有个问题一直困扰着我:许仙选择了救蛇,为什么杨过却选择救雕(而不救蛇)  后面想想,其实杨过救神雕是有原因的,当年神雕和巨蛇打架的时候  雕对杨过说:杀蛇,杀蛇,杀蛇!  蛇对杨过说:杀雕,杀雕,杀雕!  杨过果断选择了杀蛇业务场景  业务描述  业务上有这样的需求,张三、李四两个用户,如果互相关注则成为好友  设计上有两张表,关注关系表: tbl_follow   朋友关系表: tbl_friend   我们以张三关注李四为例,业务实现流程是这样的    1、先查询李四有没有关注张三    2、如果李四关注了张三,则成为好友,往 tbl_friend 插入一条记录;如果李四没有关