blog icon indicating copy to clipboard operation
blog copied to clipboard

记录日常遇到的问题,需要记录的笔记以及新学到的知识,会进行汇总和分类,自动更新 README,欢迎评论和补充,互相学习

Results 100 blog issues
Sort by recently updated
recently updated
newest added

## 种类 - 权限控制列表(ACL,Access Control List)。 - 自主访问控制(DAC,Discretionary Access Control)。 - 强制访问控制(MAC,Mandatory Access Control)。 - 基于角色的访问控制(RBAC,Role-Based Access Control)。 - 基于属性的权限验证(ABAC,Attribute-Based Access Control)。 ## 介绍 ### ACL 权限控制列表 > 规定资源可以被哪些主体进行哪些操作 在...

架构方案

> 来源:React 进阶实战指南 ## Form ```jsx class Form extends React.Component{ state={ formData:{} } /* 用于提交表单数据 */ submitForm=(cb)=>{ cb({ ...this.state.formData }) } /* 获取重置表单数据 */ resetForm=()=>{ const { formData } =...

React

https://www.ruanyifeng.com/blog/2015/07/flex-grammar.html

CSS

## PPI PPI是Producer Price Index,中文含义是生产者价格指数,可以理解为社会企业生产商品的平均成本,包含原材料、半成品和最终生产品三个阶段的物价信息。PPI数据源自9大类商品,包括燃料、动力类;有色金属类;有色金属材料类;化工原料类;木材及纸浆类;建材类(钢材、木材、水泥);农副产品类;纺织原料类;工控产品类。PPI是生产,CPI是消费,显然是先有生产,再有消费,所以PPI是CPI的前兆。一般价格波动会首先影响到生产端PPI的数据,再由产业链向下游扩散,最后反映到消费者的衣食住行上。 ## CPI CPI是居民消费价格指数(consumer price index)的简称。居民消费价格指数,是一个反映居民家庭一般所购买的消费商品和服务价格水平变动情况的宏观经济指标。它是度量一组代表性消费商品及服务项目的价格水平随时间而变动的相对数,是用来反映居民家庭购买消费商品及服务的价格水平的变动情况。 **其变动率在一定程度上反映了通货膨胀或紧缩的程度。** ## 参考 - https://www.zhihu.com/question/39369001/answer/1278620127

经济

> 原文:https://juejin.cn/post/6844904116552990727 ## call ```js Function.prototype.myCall = function(thisArg, ...args) { const fn = Symbol('fn') // 声明一个独有的Symbol属性, 防止fn覆盖已有属性 thisArg = thisArg || window // 若没有传入this, 默认绑定window对象 thisArg[fn] = this // this指向调用call的对象,即我们要改变this指向的函数...

手写代码

> 原文:https://juejin.cn/post/6844904116552990727#heading-28 我们通过分析几种加密方式,层层递进,理解HTTPS的加密方式以及为什么使用这种加密方式: ## 对称加密 客户端和服务器公用一个密匙用来对消息加解密,这种方式称为对称加密。客户端和服务器约定好一个加密的密匙。客户端在发消息前用该密匙对消息加密,发送给服务器后,服务器再用该密匙进行解密拿到消息。 这种方式一定程度上保证了数据的安全性,但密钥一旦泄露(密钥在传输过程中被截获),传输内容就会暴露,因此我们要寻找一种安全传递密钥的方法。 ## 非对称加密 采用非对称加密时,客户端和服务端均拥有一个公钥和私钥,公钥加密的内容只有对应的私钥能解密。私钥自己留着,公钥发给对方。这样在发送消息前,先用对方的公钥对消息进行加密,收到后再用自己的私钥进行解密。这样攻击者只拿到传输过程中的公钥也无法破解传输的内容 尽管非对称加密解决了由于密钥被获取而导致传输内容泄露的问题,但中间人仍然可以用篡改公钥的方式来获取或篡改传输内容,而且非对称加密的性能比对称加密的性能差了不少 ## 第三方认证 上面这种方法的弱点在于,客户端不知道公钥是由服务端返回,还是中间人返回的,因此我们再引入一个第三方认证的环节:即第三方使用私钥加密我们自己的公钥,浏览器已经内置一些权威第三方认证机构的公钥,浏览器会使用第三方的公钥来解开第三方私钥加密过的我们自己的公钥,从而获取公钥,如果能成功解密,就说明获取到的自己的公钥是正确的 但第三方认证也未能完全解决问题,第三方认证是面向所有人的,中间人也能申请证书,如果中间人使用自己的证书掉包原证书,客户端还是无法确认公钥的真伪 数字签名 为了让客户端能够验证公钥的来源,我们给公钥加上一个数字签名,这个数字签名是由企业、网站等各种信息和公钥经过单向hash而来,一旦构成数字签名的信息发生变化,hash值就会改变,这就构成了公钥来源的唯一标识。 具体来说,服务端本地生成一对密钥,然后拿着公钥以及企业、网站等各种信息到CA(第三方认证中心)去申请数字证书,CA会通过一种单向hash算法(比如MD5),生成一串摘要,这串摘要就是这堆信息的唯一标识,然后CA还会使用自己的私钥对摘要进行加密,连同我们自己服务器的公钥一同发送给我我们。 浏览器拿到数字签名后,会使用浏览器本地内置的CA公钥解开数字证书并验证,从而拿到正确的公钥。由于非对称加密性能低下,拿到公钥以后,客户端会随机生成一个对称密钥,使用这个公钥加密并发送给服务端,服务端用自己的私钥解开对称密钥,此后的加密连接就通过这个对称密钥进行对称加密。 综上所述,HTTPS在验证阶段使用非对称加密+第三方认证+数字签名获取正确的公钥,获取到正确的公钥后以对称加密的方式通信

网络

> 原文:https://www.designcise.com/web/tutorial/why-is-styled-components-styled-wrapper-not-working-with-existing-react-component

CSS

> 原文:https://juejin.cn/post/6844904148899463175 ```js function wrap(p) { let obj = {}; let p1 = new Promise((resolve, reject) => { obj.resolve = resolve; obj.reject = reject; }); obj.promise = Promise.race([p1, p]); return...

ES6

> 原文:https://github.com/happylindz/blog/issues/17 ## 概念 - preload: 当浏览器解析到这行代码就会去加载 href 中对应的资源但不执行,待到真正使用到的时候再执行 - prefetch: 作用是告诉浏览器未来可能会使用到的某个资源,浏览器就会在闲时去加载对应的资源,若能预测到用户的行为,比如懒加载,点击到其它页面等则相当于提前预加载了需要的资源 ## 特点 正确使用 preload/prefetch 不会造成二次下载,也就说:当页面上使用到这个资源时候 preload 资源还没下载完,这时候不会造成二次下载,会等待第一次下载并执行脚本。 对于 preload 来说,一旦页面关闭了,它就会立即停止 preload 获取资源,而对于 prefetch 资源,即使页面关闭,prefetch 发起的请求仍会进行不会中断。 preload 是告诉浏览器页面必定需要的资源,浏览器一定会加载这些资源,而 prefetch...

JavaScript

1. https://github.com/xiaohesong/TIL/blob/master/front-end/es6/understanding-es6/class.md 2. https://github.com/Advanced-Frontend/Daily-Interview-Question/issues/20

JavaScript