摘要:
解析html元素,构建dom 树 解析CSS,生成页面css规则树(Style Rules) 将dom树 和 css规则树关联起来,生成render树 布局(layout/ reflow),浏览器会为Render树上的每个节点确定在屏幕上的尺寸、位置 绘制Render树,绘制页面像素信息到屏幕上,这 阅读全文
摘要:
CSRF的原理: 跨站请求伪造,简单的说,完成CSRF需要两个步骤:1)登陆受信任的网站A,在本地生成COOKIE。2)在不登出A的情况下,或者本地COOKIE没有过期的情况下,访问危险网站B。 CSRF的防御: 目前防御 CSRF 攻击主要有三种策略:验证 HTTP Referer 字段;在请求地 阅读全文
摘要:
XSS的原理: XSS(跨站脚本攻击)是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。 xss漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所 阅读全文
摘要:
问题一:请画出并说明HTTP请求时,TCP/IP通信传输流 利用TCP/IP协议族进行网络通信时,会通过分层顺序与对方进行通信。 发送端从应用层往下走,接收端则从链路层往上走 第一步:首先作为发送端的客户端在应用层(HTTP协议)发出一个想看某个Web 页面的HTTP请求第二步:接着,为了传输方便, 阅读全文
摘要:
问题一:TCP/IP协议族按层次划分了哪几次? TCP/IP协议族最重要的一点就是分层,TCP/IP协议族按层次分为了4层: 应用层、传输层、网络层、数据链路层。 问题二:TCP/IP协议族各层的作用是什么? 应用层 应用层决定的是向用户提供应用服务时的活动。 在TCP/IP协议族中预存了各类通用的 阅读全文
摘要:
问题一:什么是TCP/IP协议族 不同硬件、操作系统之间的通信,所有的一切都需要一种规则,我们就把这种规则称为协议(protocol)。协议中存在各种各样的内容。从电缆的规格到IP地址的选定方式、寻找异地用户的方法、双方建立通信的顺序,以及Web页面显示需要处理的步骤等。像这样把与互联网相关联的协议 阅读全文
摘要:
Node.js 在主线程里维护了一个事件队列,当接到请求后,就将该请求作为一个事件放入这个队列中,然后继续接收其他请求。当主线程空闲时(没有请求接入时),就开始循环事件队列,检查队列中是否有要处理的事件,这时要分两种情况:如果是非 I/O 任务,就亲自处理,并通过回调函数返回到上层调用;如果是 I/ 阅读全文
摘要:
Nodejs之所以单线程可以处理高并发的原因,得益于libuv层的事件循环机制,和底层线程池实现。(1)前提:I/O密集型任务,如果是CPU密集型,也会产生阻塞。(2)单线程的解释:主线程一个,底层工作线程多个。(3)事件机制的底层依赖库:libuv、libeio、libev。 阅读全文
摘要:
Nodejs所谓的单线程,只是主线程是单线程,所有的网络请求或者异步任务都交给了内部的线程池去实现,本身只负责不断的往返调度,由事件循环不断驱动事件执行。 阅读全文
摘要:
问题一:什么是模块化? 模块化是指把一个复杂的系统分解到多个模块以方便编码。 问题二:为什么出现模块化? 很久以前,开发网页要通过命名空间的方式来组织代码,例如 jQuery 库把它的API都放在了window.$下,在加载完 jQuery 后其他模块再通过window.$去使用 jQuery。 这 阅读全文