06 2017 档案
摘要:XSS漏洞 XSS 全称 Cross Site Scripting ,跨站脚本攻击。它的形成主要原因是多数用户输入没有转义,而被直接执行。 参考下面一段脚本: 攻击者发现这里的漏洞后,构造这样的URL: 为了不让受害者发现这段URL的猫腻,他可能会压缩成一个短网址: 然后将短网址发给某个登录在线用户
阅读全文
摘要:为什么 typeof null === 'object' 原理是这样的,不同的对象在底层都表示为二进制,在JavaScript中二进制前三位都为0的话会被判断为 object 类型, null 的二进制表示是全0,自然前三位也是0,所以执行 typeof 时会返回“ object ”。 对象属性的存
阅读全文
摘要:函数调用位置 与词法作用域相反的是,this的指向由函数运行时决定,它是动态的,随着函数调用位置变化而变化。 要理解 this,首先要理解调用位置 :调用位置就是函数在代码中被调用的位置(而 不是声明的位置)。只有仔细分析调用位置才能回答这个问题:这个this到底引用的是什么? function b
阅读全文
摘要:模块模式定义 模块是'javascript'的一种设计模式,它为函数定义一个包装函数,并且该包装函数的返回值与模块的API保持一致: 单例模块模式 仔细研究上面的模块,我们发现每次调用 都会生成一个实例,很浪费。于是我们简单的包装一下,就有了单例模块模式: 模块依赖管理 现代大多数模块依赖管理器本质
阅读全文
摘要:背景描述: VUE 项目经过 npm run bulid 生成静态文件上传到服务器后,当我们切换路由并刷新页面,nginx 服务器会报 502 或者 404 错误。 原因分析: 我猜测是因为在 VUE 项目中,路由是利用H5的 history ,看起来页面 url 发生了变化,其实根本就在同一个页面
阅读全文
摘要:无论是传统网页还是 ajax api,我们都不得不进行数据分页,一来节省带宽二来提升页面响应速度。作为一个数据完备的 web 应用,做好分页功能能极大提升用户体验。 简单的分页查询 在 mongoose 中,我们可以利用 skip、limit来进行分页: 根据前端传入的 page 来跳过相应的页数,
阅读全文
摘要:nginx 虽然默认开启了gzip压缩,但是有关压缩文件、压缩效率没有开启,在建设我的(个人博客)[www.fayinme.cn]中,直观的感受到gzip带来的访问速度提升的快感。 如何开启GZIP 我使用的是阿里云服务器,登陆后执行: 在 nginx.conf 文件中找到 gzip setting
阅读全文

浙公网安备 33010602011771号