• XSS攻击的原理及防范

    技术 2020-06-14

    攻击原理Cross Site Scripting(跨域脚本攻击),简称XSS,是web应用最见的攻击方式之一。攻击的前提有两个:1. 浏览器可以执行JavaScript代码(这不是废话吗)。2. 网页可以显示用户输入的内容。包括但不限于:根据url中的参数渲染网页、预览输入框写好的内容、留言板等其他...

  • CSSStyleSheet:使用JS操作CSS

    技术 2020-04-08

    简介CSSStyleSheet用于查看和修改当前网页的CSS样式表。网页的样式离不开CSS样式表。以本网站为例,需要三个CSS样式表:bootstrap.css(基础库的样式)、site.css(自定义样式)、scroll-top.css(回到顶部插件的样式)。打开Chrome控制台,输入“docu...

  • 网站提速:Http2 & server push 实践

    技术 2020-02-29

    HTTP/2简介二进制分帧(Frame)Http协议分为header和body两部分。在Http1.1中,header必定是ASCII编码的文本,body部分根据Content-Type来决定是文本还是二进制。而在Http2中,header和body都是二进制传输的,并且统称为“帧”(frame)。...

  • 微信小程序性能优化实践

    技术 2020-01-09

    三个月前接手一个小程序项目,用户量大,交互复杂,性能一般。想法设法做了各种优化,取得了不错的效果,也在过程中收获了一些经验。昨天在公司内部做了一个技术分享,总结了一些优化经验,顺便整理为本文。提高加载性能典型的web类的应用,跑起来都需要3步:第一步,加载运行环境;第二步,下载代码;第三步,执行代码...

  • 使用PublicKey免密登录Linux服务器

    技术 2019-12-12

    原理SSH不仅可以通过帐号密码登录,还可以通过非对称加密的密钥登录。原理如下:登录流程是典型的非对称加密应用。私钥一直都在客户端保存,不在网络上传输,不会被中间人窃取。公钥是可以公开的,只需要在服务端把密钥添加进去即可,整个过程不需要用到密码。实践Step1:客户端生成密钥对Linux用户可以用ss...

  • 基于位运算的权限管理

    技术 2019-10-28

    位运算基础位运算,就是直接对二进制位进行与、或、非等逻辑运算。位运算并不仅限于布尔类型的数据。Int类型数据在内存中也是以二进制数据进行存储的,位计算可以直接对整数在内存中的二进制位进行操作。举个例子,7的二进制是111,6的二进制是110,直接进行与运算“7&6”,相当于二进制进行与运算“...

  • 详解BigInt

    技术 2019-09-21

    为什么要有BigInt9999999999999999 === 10000000000000000  // true上述等式,返回true。如果代码里出现这种迷惑性的bug,排查起来会非常头疼。JavaScript中Number类型只能安全地表示-9...

  • HSTS原理及实践

    技术 2019-08-09

    Https连接Https通过加密传输和身份认证保证了http协议传输过程的安全性,然而这并不意味着你开启了https网站就绝对安全了。大部分用户都很少直接在地址栏输入https://,而是直接输入网址。此时浏览器默认发起http请求,再由服务端进行30x重定向(通常是301永久重定向)到https。...

  • Yii2 webuploader(Yii2大文件分片上传扩展)

    技术 2019-07-01

    Yii2 extension for large file chunk upload. Base on WebUploader.github:https://github.com/oonne/yii2-webuploaderInstallationThe preferred way to insta...

  • 详解Http缓存机制

    技术 2019-05-27

    前言Web的缓存可以粗略分为两种:服务器缓存和浏览器缓存。服务器缓存(如代理服务器缓存、CDN等)让资源加载得更快,可有效提高第一次访问的加载速度;而浏览器缓存可以跳过请求重复的资源,大幅度提高第二次访问的加载速度。浏览器缓存又可以粗略分为两种:localstorage、indexDB、Cache等...

TOP