摘要:
jquery ajax是个很常用接口,而在请求时候,可能存在响应401的情况(身份认证过期或未登录),比较容易出现在混合应用上,如何进行身份认证,重发失败请求,还是值得注意的。 ajax请求有两种方式 1. 回调 最常写的方式,成功失败处理以回调方式传入。 2. Deferred方式 Deferre 阅读全文
摘要:
最近部门有人书写了一篇很好的Git协作方式,操作也简单,分支能以保持一条干净的线进行协作开发。这里做个笔记,方便之后查看。 PS:本文非原创。 原则 对策 步骤 1. Clone项目 2. 获取远端最新状态,并从 origin/dev 上创建自己的分支 此分支应只有你自己使用 PS:git fetc 阅读全文
摘要:
利用浏览器缓存,可以使得页面加载速度提高,也减轻服务端压力。有几个比较重要点如下: 1. 浏览器是如何判断缓存是否过期? 2. 服务端如何判断缓存已失效? 3. 为什么有了Last-Modified还要Etag? 4. 200 OK( from cache )和 304 Not Modified的区 阅读全文
摘要:
前言 以一个煮饭的例子开始,例如有三件事,A是买菜、B是买肉、C是洗米,最终的结果是为了煮一餐饭。为了最后一餐饭,可以三件事一起做,也可以轮流做,也可能C需要最后做(等A、B做完),这三件事是相关的,抽象起来有三种场景。 顺序做 先买菜,再买肉,最后洗米, 即 A->B->C。 并发做 买菜,买肉, 阅读全文
摘要:
昨天心血来潮,想看看动漫,就随便选择了一部我没看过的——东京食尸鬼,不到两天的时间就看完了两季,我没有特意去记住什么场景,说说我的感觉。我已经给两季取名,第一季为觉悟,金木研的觉悟。第二季为救赎,喰种的救赎。 男主金木研在第一季很软弱,在经历那么多创伤后,学不会坚强,看的时候我很困惑,是不是蜕变需要 阅读全文
摘要:
在翻阅资料的时候,有人把观察者(Observer)模式等同于发布(Publish)/订阅(Subscribe)模式,也有人认为这两种模式还是存在差异,而我认为确实是存在差异的,本质上的区别是调度的地方不同。 观察者模式 比较概念的解释是,目标和观察者是基类,目标提供维护观察者的一系列方法,观察者提供 阅读全文
摘要:
点击劫持(ClickJacking)是一种视觉上的欺骗手段。大概有两种方式,一是攻击者使用一个透明的iframe,覆盖在一个网页上,然后诱使用户在该页面上进行操作,此时用户将在不知情的情况下点击透明的iframe页面;二是攻击者使用一张图片覆盖在网页,遮挡网页原有位置的含义; iframe覆盖 直接 阅读全文
摘要:
CSRF是什么? CSRF(Cross Site Request Forgery),中文是跨站点请求伪造。CSRF攻击者在用户已经登录目标网站之后,诱使用户访问一个攻击页面,利用目标网站对用户的信任,以用户身份在攻击页面对目标网站发起伪造用户操作的请求,达到攻击目的。 举个例子 简单版: 假如博客园 阅读全文
摘要:
在我上一篇《前端安全之XSS攻击》文中,并没有把XSS攻击的解决办法说完整,而XSS的攻击又那么五花八门,有没有一招“独孤九剑”能够抗衡,毕竟那么多情况场景,开发人员无法一一照顾过来,而今天通过阅读《白帽子讲Web安全》这本书,对应对方式有了更好的总结,分为两类,一是服务端可以干的事,二是客户端可以 阅读全文
摘要:
下面图是我总结一次提交遇到冲突解决的过程。 1. 把本地工作区的修改提交到本地仓库 2. 从远程仓库拉取代码,与本地仓库合并(pull = fetch + merge) 3. 本地仓库的代码推送回工作区,包括confilct部分 4. 解决冲突,然后重新commit到本地仓库 5. push到远程仓 阅读全文
摘要:
在数据添加到DOM时候,我们可以需要对内容进行HtmlEncode或JavaScriptEncode,以预防XSS攻击。 JavaScriptEncode 使用“\”对特殊字符进行转义,除数字字母之外,小于127的字符编码使用16进制“\xHH”的方式进行编码,大于用unicode(非常严格模式)。 阅读全文
摘要:
XSS(cross-site scripting跨域脚本攻击)攻击是最常见的Web攻击,其重点是“跨域”和“客户端执行”。有人将XSS攻击分为三种,分别是: 1. Reflected XSS(基于反射的XSS攻击) 2. Stored XSS(基于存储的XSS攻击) 3. DOM-based or 阅读全文
摘要:
20160206晚上,我突然明白了一件事,未来是两个人的事。 我毕业就在广州工作,也工作两年半了。在这段时间之前,我一直在想怎么回家乡工作生活,我的职业是软件工程师,在我家乡(广东揭阳)是几乎没有这种职业,可以说回家乡工作的路也就是公务员、国企、移动电信,或者是直接转行了。 跟大部分人一样,我是没有 阅读全文
摘要:
今天我总结了什么是HTTP三次握手,还有HTTPS握手的过程以及为什么HTTPS是安全的。 前提 在讲述这两个握手时候,有一些东西需要提前说明。 HTTP与TCP/IP区别? TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。WEB使用HTTP 阅读全文
摘要:
今天思考下前端源码安全的东西(不是前端安全,只是针对于源码部分)。在我看来,源码安全有两点,一是防止抄袭,二是防止被攻破。实际上讲,前端的代码大多是没有什么可抄袭性,安全更是形同虚设的(任何前端输入都是不能相信的)。但如果还是想防止源码被查看,HTML、CSS并不能做什么,最终都会用露出来(最简单用 阅读全文
摘要:
简单介绍下NodeJS现有API。 阅读全文
摘要:
我在项目使用了AngularJS框架,用RequireJS做异步模块加载(AMD),在做文件合并压缩时,遇到了一些坑,有些只是解决了,但不明白原因。 那些坑 1. build.js里面的paths必须跟main.js里面的保持一致。 这个build.js就是r.js使用的配置文件,而main.js就 阅读全文
摘要:
是什么沙盒(sandbox),另称沙箱,是一种按照安全策略限制程序行为的执行环境。“沙盒”技术的实践运用流程是:让疑似病毒文件的可疑行为在虚拟的“沙盒”里充分运行,“沙盒”会记下它的每一个动作;当疑似病毒充分暴露了其病毒属性后,“沙盒”就会执行“回滚”机制:将病毒的痕迹和动作抹去,恢复系统到正常状态... 阅读全文
摘要:
最近在思考前端js文件该如何合并,当然不包括不能合并文件,而是我们能合并的文件,想了想应该也只有三种方式。 三个方式如下: 1. 一个大文件,所有js合并成一个大文件,所有页面都引用它。 2. 各个页面大文件,各自页面合并生成自己所需js的大文件。 3. 合并多个共用大文件,根据实践情况合并出多个共 阅读全文
摘要:
IndexedDB是在浏览器中保存结构化数据的一种数据库,为了替换WebSQL(标准已废弃,但被广泛支持)而出现。IndexedDB使用NoSQL的形式来操作数据库,保存和读取是JavaScript对象,同时还支持查询及搜索。 下面由5个方面讲述: 1. 数据库初始化 2. 对象存储空间(Objec 阅读全文