端口号:http:80???????? ???????????????https:443 1、什么是http协议,网络三种架构及特点、web应用的特点 HTTP协议是超文本传输协议,是互联网上应用最广泛的一种网络协议,所有www文件都必须遵守的一个标准, 是以ASCII码传输,建立在TCP/IP协议之上的应用层规范。 HTTP0.9:只有一个命令get,没有header等描述数据的信息,服务器发送完内容就关闭TCP链接 HTTP1.0:增加了POST PUT HEAD等多种命令。有了status code和请求头相关的内容,增加了多字符集支持,多部份发送、缓存、权限等相关内容/ HTTP1.1:默认使用connection:keep-alive,支持持久链接。增加了pipeline可以在同一个TCP里发送多个http请求。增加了请求头host和其他一些命令。 HTTP2.0:所有数据以二进制传输,响应并行传输,新增头信息压缩以及推送贡藕功能,提高了传输效率。 网络应用程序架构包括三种:B/S,C/S,P2P. CS架构,即客户端/服务器架构,是一种典型的两层架构,客户端包含一个或多个在用户的电脑上运行的程序。 特点:需要安装特定的客户端程序 2、针对不同凭台开发不同版本 3、升级应用需重新安装 4、能够直接使用客户端硬件资源。 BS架构:即浏览器/服务器架构,通过网页浏览器进行访问,通过浏览器与服务器进行通信来完成。 特点:客户端无需安装,有Web浏览器即可。 2、跨平台能力 3、无缝升级,客户端免维护。 P2P架构:Point-to-Point,点到点系统,不需要服务器中转,客户端与客户端彼此直接通信,如BT下载软件。 web应用的特点: web应用是图形化和易于导航的,能够在页面显示色彩蜂虎的图形和文本。 web应用与平台无关,可以使用任何平台通过internet访问。 web应用是分布式的,不同信息可以放在不同的站点上 web应用是动态的,web站点的信息包含站点本身的信息,信息的提供者也可以对网站的信息进行更新。 web应用是交互的,交互性表现在它的超链接上,用户的浏览顺序和所到站点完全由他自己决定。 URL组成: protocol://hostname[:port]/path/[;parameters][?query]#fragment hhtp协议的性质: HTTP是简单的 HTTP是可扩展的 HTTP是无状态,有会话的 HTTP是可靠的 web缓存: 当web缓存发现请求的资源已经被存储,他会拦截请求,返回该资源的拷贝,而不会去源服务器直接下载,这样的好处是:缓解服务器端压力,提升性能 Http重定向原理:在HTTP协议中,重定向操作由服务器通过发送特殊的响应而出发。HTTP协议的重定向响应的状态码为3xx。浏览器在接收到重定向响应 的时候,会采用该响应提供的新的URL,并立即进行加载。大多数情况下,除了会有一小部分性能损失外,重定向操作对于用户来说不可见。 HTTPS是以安全为目标的HTTP通道,其实就是HTTP的升级版本。 HTTPS安全基础是SSL即在HTTP下加入SSL层,通过安全传输机制进行传送数据,保证数据的隐秘性、完整性、降低非侵入性拦截攻击的可能性。 Cookie: Cookie实际上是一小段的文本信息,如果服务器需要记录用户状态,就会用response向客户端办法COokie,客户端会保存cookie,当再次请求该网站时, 客户端就会将请求的网址和Cookie一同提交给服务器端,服务器通过检查Cookie辨认用户状态 Expires:Cookie中MaxAge有3种值,单位为秒,如果是正数,代表Cookie会在x秒之后自动消失,浏览器会将他持久化并储存下来。 为负数代表是临时cookie关闭窗口立即失效,为0表示立即删除Cookie。 Cookie分为会话Cookie和持久性Cookie(保存在硬盘中) Cookie不适合用来作为大量数据的客户端存储。 Session是一种服务器端的机制 在计算机中,尤其是在网络应用中,称为会话控制。Session对象存储特定用户会话所需的属性及配置信息。用户在应用程序的Web页跳转时,存储在Session成员中的变量不会丢失, 而是会在整个用户会话中一直存在下去 Session有两种实现方式 通过Cookie实现 通过URL重写实现 可以设置过期时间,默认为30分钟。 Session和Cookie的区别: 1、存储地区不同 Cookie的数据保存在客户端浏览器,Session保存在服务器。 2、可能借用到cookie 服务端保存状态机制需要在客户端做标记,Session可能借助Cookie机制 3、Cookie常用地区Cookie通常用于客户端保存用户的登陆状态 4、存储类型不同 Session可以存取任何类型的数据,Cookie只能存入字符串 5、存储空间不同 Cookie存储数据大小有限,session无限 Session的弊端: 服务器压力增大,因为存储在服务器内存中 如果session基于cookie进行识别,如果cookie被截获容易收到攻击 session数据扩展性不强,不能共享。 Token:
服务器端生成的一串加密后的字符串,作为客户端请求的令牌,第一次登录以后,客户端只需通过token请求数据,无需输入用户名密码 Web客户端作用:
用来发送HTTP请求 接收服务器响应 把服务器返回的HTML代码渲染成界面 Web服务端作用: 监听客户请求 处理客户端的简单请求 客户端与数据库之间的屏障 处理复杂系统的业务和数据库的访问
整个的运行过程: 表示层-》访问网站-》逻辑层:加载编译并执行index.asp-》应用层-》执行SQL-》返回数据-》应用层:与数据存储交互,利用应用程序和业务逻辑,为web服务器提供数据。 -》逻辑层-》发送HTML页面-》表示层:呈现HTML页面 url编码 url编码时一种浏览器用来打包表单输入的格式 编码的格式为:%加字符的ASCII码 Base64(最常用的传输8bit字节数据的编码方式之一):将不可打印的字符转换成打印字符,也就是将二进制数据编码成ASCII字符 devops:文化观念的改变+自动化测试工具=不断适应快速变化的市场 web测试: web测试的类型: 界面测试(人机交互,操作逻辑,界面美观。设计原则:易用性、规范性、合理性、美观与协调) 功能测试(连接测试 表单测试 搜索测试 CookieSession测试、数据库测试)? 性能测试(用户操作的响应时间、系统的吞吐量、系统的硬件资源情况、网络资源占用情况)? 兼容性测试(不同的操作系统平台、浏览器、分辨率) 安全性测试等 移动端APP: 三种开发模式: 原生APP 混合APP WEBAPP 原生APP(速度快,性能高,用户体验好 无法跨平台,开发成本高,更新麻烦)针对IOS ANDROID等不同的手机操作系统采用不同的语言和框架进行开发 Web APP(跨平台,周期短,成本低 ?用户体验不佳)基于web的系统和应用,运行于网络和浏览器之上,目前多采用h5标准开发,无需下载安装。 Hybrid App(用户体验好,跨凭台)指半原生半web的混合类App以JS+Native两者相互调用为主
|