随笔分类 - Browser
摘要:浏览器窗口间通信 浏览器多个标签页窗口间通信,主要是指的同源的多个页面间的通信,主要方法有本地存储通信、 通信、 通信。 本地存储通信 通过浏览器对于同源页面本地存储是共享的策略实现通信,主要可以使用 、`cookie indexDB sessionStroage MDN window.open s
阅读全文
摘要:OSI七层模型 OSI七层模型包括物理层、数据链路层、网络层、运输层、会话层、表示层、应用层,其中会话层、表示层、应用层一般统称为应用层,在TCP/IP四层模型中物理层与数据链路层归为网络接口层,网络层与运输层是单独的层级,会话层、表示层、应用层归为应用层。 物理层 物理层的主要任务描述为确定与传输
阅读全文
摘要:Window对象 window作为全局变量,代表了脚本正在运行的窗口,将属性与方法暴露给JavaScript。 Window对象属性 closed: 表示所引用的窗口是否关闭。 console: 提供了向浏览器控制台输出日志信息的方法。 crypto: 此对象允许网页访问某些加密相关服务。 cust
阅读全文
摘要:微信小程序实现原理 微信小程序采用 、`wxss javascript MVVM UI Webview AppService Webview AppService JSBridge UI`的渲染与事件的处理。 目录结构 打包前 打包后 架构方案 微信小程序的框架包含两部分 视图层与 逻辑层, 层用来
阅读全文
摘要:HTTP协议发展历程 超文本传输协议是一个用于传输超文本文档的应用层协议,它是为 浏览器与 服务器之间的通信而设计的, 协议到目前为止全部的版本可以分为 、`HTTP 1.0 HTTP 1.1 HTTP 2.0 HTTP 3.0 HTTP 1.1 HTTP 2.0 HTTP 3.0`版本。 HTTP
阅读全文
摘要:RESTful架构与RPC架构 在 架构中,关注点在于资源,操作资源时使用标准方法检索并操作信息片段,在 架构中,关注点在于方法,调用方法时将像调用本地方法一样调用服务器的方法。 RESTful架构 即表述性状态传递 ,是一种软件架构风格,也可以称作是一种设计 的模式, 通过 协议定义的通用动词方法
阅读全文
摘要:浏览器页面呈现过程 从输入链接到浏览器呈现页面的过程中,浏览器所经历的过程。 DNS解析 首先浏览器将输入的链接进行DNS解析,也就是将域名转换为IP地址的过程,得到了服务器具体的IP地址,才可以进行TCP链接以及数据的传输。 具体DNS解析的过程,浏览器首先检查自身的DNS缓存是否对于此域名有IP
阅读全文
摘要:浏览器事件 常用浏览器事件与DOM事件,包括鼠标事件、键盘事件、框架/对象事件、表单事件、剪贴板事件、打印事件、拖动事件、多媒体事件、动画事件、过渡事件。 浏览器事件 加载相关 onbeforeunload: 该事件在即将离开页面(刷新或关闭)时触发。 onload: 文档加载完成后触发。 onun
阅读全文
摘要:TCP与UDP异同 TCP/IP模型的运输层有两个不同的协议:UDP用户数据报协议与TCP传输控制协议。 相同点 TCP与UDP都是运行在运输层的协议。 TCP与UDP的通信都需要开放端口。 不同点 TCP TCP是面向连接的协议,提供全双工通信,需要建立链接之后再传输数据,数据传输负载相对较大。
阅读全文
摘要:TCP三次握手 传输控制协议TCP,Transmission Control Protocol是一种面向连接的、可靠的、基于字节流的传输层通信协议,其是运行在OSI七层模型中的运输层,为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。 三次握手 过程 client server
阅读全文
摘要:分布式SESSION一致性 SESSION是服务器为客户端创建的一个会话,存储用户的相关信息,用以标识用户身份等。在单服务器环境下是不需要考虑会话的一致性的问题的,但是在集群环境下就会出现一些问题,假如一个用户在登录请求时负载均衡到了A服务器,A服务器为其分配了SESSION,下次请求数据时被分配到
阅读全文
摘要:对称加密与非对称加密 在数字加密算法中,可划分为对称加密和非对称加密。 对称加密 对称加密算法中对于数据的加密与解密使用同一密钥,即使用相同的密码对内容进行加密解密。 内容 + 密钥 = 密文 密文 - 密钥 = 原文 优点 加解密速度快,效率高,适合一对一的信息加密传输 缺点 数据传输前必须协商好
阅读全文
摘要:HTTPS加密传输过程 HTTPS全称Hyper Text Transfer Protocol over SecureSocket Layer,是以安全为目标的HTTP通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。HTTPS在HTTP的基础下加入SSL层,HTTPS的安全基础
阅读全文
摘要:CSS劫持攻击 CSS劫持是一种并不很受重视的劫持方式,但是其也有一定的危害,且由于其并不一定需要依赖JavaScript,这使得此种攻击方式更容易实现。 ClickJacking点击劫持 当访问某网站时,利用CSS将攻击者实际想让你点击的页面进行透明化隐藏,然后在页面后显示 一些东西诱导让你点击,
阅读全文
摘要:HTTP协议概述 HTTP超文本传输协议,基于TCP/IP通信协议传输数据。 特点 HTTP是无连接的:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接,采用这种方式可以节省传输时间。 HTTP是媒体独立的:只要客户端和服务器知道如何处理的数据内容,任
阅读全文
摘要:重绘与回流 重绘与回流是浏览器渲染的时候进行的操作,当页面内容发生改变的时候,就会触发重绘或者回流 重绘 当渲染树中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,而不会影响布局的,比如background-color,则就叫称为重绘Repaint,重绘不一定触发回流。 回流 当渲染树中
阅读全文
摘要:浏览器渲染与内核 浏览器内核可以分成两部分:渲染引擎与JS引擎。最开始渲染引擎与JS引擎并没有明确的区分,但随着JS引擎越来越独立,内核就越来越倾向于只指渲染引擎。 渲染过程 不同浏览器内核的渲染方式不同,但整体流程基本一致: 自上而下,首先解析HTML标签,生成DOM Tree。 在解析到<lin
阅读全文
摘要:SQL注入 SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句添加额外的SQL语句,从而实现非法操作,获取数据库数据,服务器提权等,很多机构将SQL注入作为第一危险的安全漏洞。 原理 SQL注入攻击是通过操作输入来修改SQL语句,
阅读全文
摘要:CSRF跨站请求伪造 跨站请求伪造通常缩写为CSRF或者XSRF,是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。跟跨网站脚本XSS相比,XSS利用的是用户对指定网站的信任,CSRF利用的是网站对用户浏览器的信任,浏览器对于同一domain下所有请求会自动携带cookie。
阅读全文
摘要:XSS跨站脚本攻击 跨站脚本攻击XSS,是最普遍的Web应用安全漏洞。这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当正常用户访问该页面时,则可导致嵌入的恶意脚本代码的执行,从而达到恶意攻击用户的目的。 类型 反射型XSS: 攻击者事先制作好攻击链接,需要欺骗用户自己去点击链接才
阅读全文