WEB概述

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Web应用开发概述
主讲:白小军
西安工业大学计算机学院
课程共享网址:
http://pan.baidu.com/share/link?shareid=366 359&uk=1947197090
西安工业大学计算机学院
1.1 软件编程体系
1.软件编程体系结构图
西安工业大学计算机学院
1.1 软件编程体系
2.C/S结构程序设计
C/S结构:即Client/Server结构,指应用程序由服务器端 程序和客户端程序两部分构成,客户端具有独立的处理功 能,同时可以通过网络与服务器端通信,进行协同处理。
客户端 程序
客户端 程序
TCP Socket UDP Socket
服务器 端程序
西安工业大学计算机学院
1.1 软件编程体系
上世纪80年代,美国国家科学基金会为了利用ARPANET进 行共享数据和合作研究,开始设计其高速替代网,后发展 为NSFNET。
上世纪80年代中期,NSFNET和ARPANET互联以后,网络、 机器和用户开始以指数增长,形成因特网Internet。
西安工业大学计算机学院
1.2 Internet和WWW
1.3 HTTP协议
3.Http响应
响应消息结构:
✓ 一个状态行、若干消息头、以及实体内容。其中的一些消息头和实 体内容都是可选的,消息头和实体内容之间要用空行隔开。
• 举例:
HTTP/1.1 200 OK Server: Microsoft-IIS/5.0 Date: Thu, 13 Jul 2000 05:46:53 GMT Content-Length: 2291 Content-Type: text/html Cache-control: private
相当于: http://localhost:8080/myapp/chklog.jsp?UserName=tom&Password=123456
西安工业大学计算机学院
1.3 HTTP协议
续:Http请求
请求消息示例:
Get方法示例: GET /myapp/chklog.jsp?UserName=tom&Password=123456 HTTP/1.1 Host:localhost [其它请求头] <空行> BODY(空) EMPTY
消息实体内容
请求行 多个消息头 一个空行
西安工业大学计算机学院
1.3 HTTP协议
续:Http请求
两种请求方式:
Get方式:用户数据作为 URL 中的查询字符串传递给服务器,而 body中的数据为空 Post方式:用户数据打包在body中传输给服务器,不在URL中显 露
两种方式的特点:
西安工业大学计算机学院
1.3 HTTP协议
2.Http请求
请求消息结构:
✓ 一个请求行、若干消息头、以及实体内容。其中的一些消息头和实 体内容都是可选的,消息头和实体内容之间要用空行隔开
• 举例:
GET /books/java.html HTTP/1.1 Accept: */* Accept-Language: en-us Connection: Keep-Alive Host: localhost Referer: http://localhost/links.asp User-Agent: Mozilla/4.0 Accept-Encoding: gzip, deflate
<HTML> <BODY> ……
西安工业大学计算机学院
1.3 HTTP协议
续:Http响应
响应状态码:
✓响应状态码用于表示服务器对请求的各种不同处理结果和状态,它 是一个三位的十进制数。响应状态码可归为5种类别,使用最高位为 1到5来进行分类,如下: 1)100~199:表示成功接收请求,要求客户端继续提交下一次 请求才能完成整个处理过程 。 2)200~299:表示成功接收请求并已完成整个处理过程 。 3)300~399:为完成请求,客户需进一步细化请求。例如,请 求的资源已经移动一个新地址。 4)400~499:客户端的请求有错误。 5)500~599:服务器端出现错误。
Http1.0中浏览器访问网页的过程:
浏览器
网页文档 图片1 图片2 图片3
① ② ③ WEB服务器 ④
西安工业大学计算机学院
1.3 HTTP协议
续:Http协议概述
Http1.1会话:
✓ 在一个TCP连接上可以传送多个HTTP请求和响应 ✓ 多个请求和响应过程可以重叠进行 ✓ 增加了更多的请求头和响应头
Post方法示例: POST /myapp/chklog.jsp HTTP/1.1 Host: localhost [其它请求头] <空行> UserName=tom&Password=123456
西安工业大学计算机学院
总结:Http请求
1.3 HTTP协议
请求行:请求的关键 请求方式 请求URL(Get方式时带请求数据) http协议版本号
✓ Method=“Get” ✓ Method=“Post” 示例: <form name=“frmLogin” method="get" action=“chklog.jsp" > <form name=“frmLogin” method=“post" action=“chklog.jsp" >
西安工业大学计算机学院
西安工业大学计算机学院
1.3 HTTP协议
续:Http响应
响应状态码:
典型的响应状态码:
✓ 200(正常):表示一切正常,返回的是正常请求结果。 ✓ 206(部分内容):客户发送了一个带有Range头(要求服务器只返
回部分文档内容)的GET请求,服务器按要求完成了这个请求 ✓ 302/307(临时重定向):指出被请求的文档已被临时移动到别处,
用户名 <input type="text" name="UserName" ><br/> 密码 <input type="password" name="Password" ><br/> <input type="submit" value="登录" /> </form>
或者在js中写: frmLogin.submit();
西安工业大学计算机学院
1.1 软件编程体系
3.B/S结构程序设计
B/S结构:即Browser/Server结构,应用程序同样由客户 端和服务器端两部分组成;但客户端一般使用通用的浏览 器,只负责用户与服务器的交互,处理能力有限;绝大多 数处理功能都运行在服务器端。
客户端 浏览器
客户端 浏览器
HTTP HTTP
1.2 Internet和WWW
5.WWW上的资源定位
什么是URL:即 uniform resource locator URL的构成:
✓ 通信协议 ✓ 主机地址或主机名 ✓ 主机端口号 ✓ 页面地址 例如:http://www.xatu.edu.cn:8080/index.jsp
http://222.25.8.91/webclass/index.html
续:C/S结构程序设计
C/S结构的优势:C/S结构程序的主要处理功能一般是在客 户端,充分发挥了分布式计算的优势,服务器端一般不会 成为性能的瓶颈;客户端由用户定制开发,可以实现任意 复杂的处理功能。
C/S结构的劣势:客户端需要专门安装,对于不熟悉计算 机操作的用户来说难度很大;升级很不方便,一旦程序发 生变动,所有客户端都需要升级,维护工作量很大。
✓ 会话的特点:无状态 1)浏览器与WEB服务器的连接过程是短暂的,每次连接只处理 一个请求和响应。对每一个页面的访问,浏览器与WEB服务 器都要建立一次单独的连接。 2)浏览器到WEB服务器之间的所有通讯都是完全独立分开的请 求和响应对。
西安工业大学计算机学院
1.3 HTTP协议
续:Http协议概述
西安工业大学计算机学院
1.3 HTTP协议
1.Http协议概述
Http:hypertext transfer protocol,超文本传输协议
✓ 它是TCP/IP协议集中的一个应用层协议,用于定义WEB浏览器 与WEB服务器之间交换数据的过程以及数据本身的格式.
✓ HTTP协议目前有 HTTP/1.0、HTTP/1.1、HTTP-NG 等几个版 本
✓ 1993年,第一个图形界面的浏览器Mosaic发布 ✓ 1994年,World Wide Web ConsortiumBiblioteka BaiduW3C)成立。
WWW的特点:
✓ 浏览器/服务器模式 ✓ HTML和HTTP为基础 ✓ 高度集成信息(文本、图像、音频、视频等)和服务(Email、
FTP,Telnet等)
西安工业大学计算机学院
WEB 服务器
服务器 端程序
西安工业大学计算机学院
1.1 软件编程体系
续:B/S结构程序设计
B/S结构的优势:B/S结构程序的主要处理功能都运行在服 务器端,客户端一般不需要安装特别的软件,只要使用通 用的Web浏览器即可(例如IE);软件升级时只需在服务 器端更新程序即可,不需考虑客户端。
B/S结构的劣势:由于绝大多数处理功能都由服务器端承 担,所以服务器的负担沉重,容易成为性能的瓶颈;客户 端使用了通用的软件,功能十分有限,很多在Client中很 容易实现的功能缺很难在Browser中实现(例如绘图); 另外,B/S结构程序的运行效率一般都不高。
2.Internet协议
西安工业大学计算机学院
1.2 Internet和WWW
3.TCP/IP帧的封装过程
西安工业大学计算机学院
1.2 Internet和WWW
4.WWW技术
WWW:即World Wide Web,简称Web
✓ 1989年,欧洲粒子物理研究室的物理学家Tim Berners-Lee提 出了链接文档的概念。
此文档的新的URL在Location响应头中给出 ✓ 304(未修改):表示客户机缓存的版本是最新的,客户机应该继续使
用它 ✓ 401(未经授权):表示客户机访问的是一个受口令保护的页面,结合
使用一个WWW-Authenticate响应头提示客户机应重新发出一个带 有Authorization头的请求消息 ✓ 404(找不到):服务器上不存在客户机所请求的资源。 ✓ 500(内部服务器错误):服务器端的程序发生错误。
Get方法所传输的数据在url中可见,post则不可见 Get方法所传输的数据量有限制(一般在1KB以内),Post方法则 要大得多(默认为2MB,还可以设置的更大)。
西安工业大学计算机学院
续:Http请求
请求提交示例:
1.3 HTTP协议
请登录<hr/> <form name=“frmLogin” method="get" action=“chklog.jsp" >
西安工业大学计算机学院
1.1 软件编程体系
4.软件编程体系的发展
2000年以前:C/S结构程序占主导地位,热门的开发工具 包括C++、Delphi、Java等。
2000年以后:B/S结构应用成为主流方向,热门的开发技 术包括ASP、PHP、JSP、J2EE、ASP.NET等。
软件体系结构:从2层体系向3层体系以及n层体系发展
消息头:包含浏览器及客户端相关信息,主要有: 浏览器类型 支持哪些文档类型 支持哪些字符集 客户机地址
请求实体: 请求文件(附件) 请求参数:名字=值&名字=值
西安工业大学计算机学院
1.3 HTTP协议
续:Http请求
http请求小结:
通过地址栏发出的请求总是Get请求 Form表单的请求分两种情况:
用户
显示逻辑层
数据库层 两层应用架构
用户
表示逻辑层
商务 逻辑 层
数据库层 三层应用架构
商务 逻辑 层
用户
表示逻辑层
西安工业大学计算机学院
服务层
数据库层 N层应用架构
1.2 Internet和WWW
1.Internet网络
上世纪60年代,传统电路交换网络比较脆弱,无法适应战 争的需要,美国国防部指派其高级研究计划局(ARPA)解 决此问题,后来发展出ARPANET。
✓ 深入理解HTTP协议,对管理和维护复杂的WEB站点、开发具有 特殊用途的WEB服务器程序具有直接影响
✓ Http的缺省端口是80
西安工业大学计算机学院
1.3 HTTP协议
续:Http协议概述
Http1.0的会话方式:
✓ 会话过程分四个阶段 1)客户机打开到服务器的连接 2)客户机向服务器发出请求request 3)服务器响应该请求response 4)连接关闭
相关文档
最新文档