第一章web技术概述_第1页
第一章web技术概述_第2页
第一章web技术概述_第3页
第一章web技术概述_第4页
第一章web技术概述_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Web应用开发韩京宇李莉计算机学院软件工程系第一章Web编程技术基础1互联网简介2万维网3web编程语言概览1互联网简介1.1TCP/IP协议1.2互联网地址

1.3域名和域名服务器1.4常见的互联网服务1互联网简介

互联网是国际互联网(Internetwork,简称Internet)的简称,又称因特网。鼻祖是1969年11月21日美国的阿帕网(ARPAnet),它是美国高级计划研究署(AdvancedResearchProjectAgency,简称ARPA)构建的世界上第一个分组交换网。ARPAnet实际是一个广域网(WAN:WideAreaNetwork),其覆盖范围可以从数十公里到上万公里。1互联网简介在70年代到80年代,世界上的大多数国家都建立了自己的广域网。90年代国家级的广域网都连接到美国Internet上,形成世界上规模最大的广域网,从而发展成今天的互联网。1.1TCP/IP协议

TCP/IP协议是一组协议族。在这组协议族中对网络接口层、互联网层、传输层和应用层进行了规定,如图1.1。核心是互联网层的IP协议和传输层的传输控制协议(TCP)。IP协议(InternetProtocol)定义正式的分组格式和协议,即:负责数据分割数据包,并将这些数据包发往目的地,但不检查数据是否被正确接收。传输控制协议(TransmissionControlProtocol,简称TCP),提供传输层服务:负责管理数据包的传递过程,并有效地保证数据传输的正确性。1.2互联网地址

IP地址:采用一组数字来标志网络中唯一的一台计算机。

作用:每个计算机必须有一个IP地址才能连接到因特网,每个IP包必须有一个IP地址才能发送到另外一台主机。格式:IP地址是一个32位的数字,分成4个组,每组8个位,介于十进制的0~255之间。组和组之间用实心的句号分割。

例如:31.3域名和域名服务器

各个节点对应一个名字叫域名,域名和IP地址是一一对应的。例如对应64人们采用的域名由几个段构成。这样每个域名中的每个段名为一个子域,各个子域中间用实心点分开,前面的域是后面的域的一部分,位于域名的最后一个子段是最高级子域也称为一级域。1.3域名和域名服务器域名服务器(DomainNameServer,简称DNS)是一个分布式数据库系统,它提供将域名转换成对应IP地址的信息。这种将名称转换成IP地址的方法称为名称解析。每个组织有其自己的DNS服务器,并维护域的名称映射数据库记录或资源记录。1.3域名和域名服务器在Web浏览器输入“”站点时,它就会通过以下步骤来解析该域名的IP地址:(1)Web浏览器调用DNS客户端(称为解析器),并使用上次查询缓存的信息在本地解析该查询。(2)如果本地无法解析,客户端就会向已知的DNS服务器询问答案。如果该DNS服务器曾经在特定的时间段内处理过相同的域名(““)请求,它就会在缓存中检索相应的IP地址,并将它返回给客户端。(3)如果该DNS服务器找不到相应的地址,客户端就会向某个全局根DNS服务器询问,后者返回顶级域权威DNS服务器的指针。在这种情况下,“com”域权威服务器的IP地址将返回给客户端。

1.4常见的互联网服务(1)万维网(WorldWideWeb,简称WWW)。(2)文件传输(FileTransferProtocol,简称FTP)(3)Telnet(4)电子邮件2万维网

万维网(WorldWideWeb,简称WWW)的目的是为了访问遍布在因特网上的链接文件。1989年,为了设计供同事们交换资料的线上工作空间,WWW之父伯纳斯·李提出了——个称之为“WorldWideWeb”的全球超文本项目计划。1991年伯纳斯·李便把自己开发的全球信息网放到互联网上。于是,风靡世界的WWW诞生了。2万维网浏览器/服务器模式(BS)结构的计算模式应运而生,B/S结构通常是一种三层架构的计算模式。第一层是Web浏览器,负责客户端页面显示和用户交互。第二层是Web服务器层,处理客户请求中的所有业务逻辑,包括对数据库的访问等工作,该层具有良好的可扩充性。第三层是数据中心层,负责提供应用服务器涉及的数据管理任务。2万维网B/S相比C/S的优越性:(1)具有良好的开放性,利用单一的访问点,用户可以在任何地点使用系统;(2)用户可以跨平台以相同的浏览器界面访问系统;(3)在客户端只需要安装浏览器,取消了客户端的维护工作,有效地降低了整个系统的运行和维护成本。2.1Web浏览器

浏览器和Web服务器间的通信分成三种常见的情况。(1)浏览器请求一个静态的文档,服务器定位到该文档,然后返回该文档给浏览器。(2)服务器返回一个需要用户输入的页面,用户在浏览器输入后,返回给服务器端。服务器进行一些基本计算,将最终结果返回给浏览器显示。(3)浏览器直接要求在服务器端执行某个可执行程序,程序的执行结果通过网络返回给浏览器。2.2Web服务器

Web服务器向浏览器提供服务的过程归纳为以下几个步骤。(1)Web服务器(也称为HTTP服务器)接到浏览器的请求后,把URL转换成页面所在服务器上的文件路径名。

(2)如果URL指向静态网页,就是说该网页文件里没有特殊程序代码,只有HTML标记(后缀.htm或.html的文件),Web服务器直接将它发送给浏览器。如果网页中包含图片、动画、声音等文件的链接地址,这些链接地址实际指向某个文件,则这些文件与网页一样要通过网络传输到浏览器。(3)如果URL指向的是动态网页文件,就是说网页文件不仅含有HTML标记,而且含有PHP、Java、ASP等编写的服务器端脚本程序,Web服务器就先执行网页文件中的服务器端脚本程序,将含有程序代码的动态网页转化为标准的静态网页,然后将静态网页发送给浏览器。

2.3统一资源定位器统一资源定位器(UniformResourceLocator,简记为URL)用于标识因特网上的资源。资源有各种不同的种类,这些资源通过不同的URL标识出来。2.3统一资源定位器所有URL都具有一致的通用格式:模式:对象地址在这里模式指一种网络协议,常用的模式包括http、https、ftp、telnet、file,mailto等。在这里主要关注HTTP协议,该协议用于请求和发送超文本标记语言。对于HTTP协议来说,URL其余部分的形式如下:http://域名/文档访问路径和文件名。

2.3统一资源定位器

域名对应存放资源的主机名称。主机名后附加一个冒号和端口号,则表明服务器在利用这个端口进行“侦听”。对于Http,Web服务器侦听80号端口。当服务器改用其他端口号的时候,才必须在主机名后面附加相应的端口号。例如默认的URL是/index.html。假定该在88端口监听HTTP,则应该改写成:88/index.html。

2.4超文本传输协议

超文本传输协议(HyperTextTransferProtocol,简记为HTTP)是因特网上应用最为广泛的一种网络传输协定。

HTTP是一个用于在客户端和服务器间请求和应答的协议。一个HTTP的客户端,如一个Web浏览器,通过建立一个到远程主机特殊端口(默认端口为80)的连接,初始化一个请求。一个HTTP服务器通过监听特殊端口等待客户端发送一个请求序列。

2.4超文本传输协议HTTP协议的主要特点可概括如下:(1)支持客户/服务器的应答模式。(2)简单快速:客户向服务器请求服务时,只需传送请求方法和路径。程序规模小,因而通信速度很快。

(3)灵活:HTTP允许传输任意类型的数据对象。

(4)无连接:服务器处理完客户的请求,并收到客户的应答后,即断开连接。

(5)无状态:HTTP协议是无状态协议。无状态是指协议对于事务处理没有记忆能力。2.4超文本传输协议http://host[“:”port][abs_path]

http表示要通过HTTP协议来定位网络资源,host表示合法的Internet主机域名或者IP地址;port指定一个端口号,为空则使用缺省端口80;abs_path指定请求资源的URI;如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出,通常这个工作浏览器自动帮我们完成。例如可以输入http:16:8080/index.jsp,也可以输入,此时浏览器自动转换成:/index.html。

2.4超文本传输协议HTTP协议由两个阶段组成,即请求和响应。打开一个网页实际需要多次的请求和响应(可以用Fidder工具查看),例如(1)当你在浏览器输入URL的时候,浏览器发送一个Request去获取

的html.

服务器把Response发送回给浏览器.(2)浏览器分析Response中的HTML,发现其中引用了很多其他文件,比如图片,CSS文件,JS文件。(3)浏览器会自动再次发送Request去获取图片,CSS文件,或者JS文件。(4)等所有的文件都下载成功后。网页就被显示出来了。2.4.1请求格式

http请求由三部分组成,依此是请求行(Requestline)、消息报头(Requesthead)和可选的请求正文(body)。其中消息报头和请求正文之间有一个空白行。如下:

1Requestline 2Requesthead 3Blankline 4Body2.4.1请求格式请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和HTTP协议的版本,格式如下:

MethodRequest-URIHTTP-Version其中Method表示请求方法;Request-URI是一个统一资源标识符;HTTP-Version表示请求的HTTP协议版本;例如:GET/HTTP/1.1

请求方法解释如下:GET

请求获取Request-URI所标识的资源

POST

在Request-URI所标识的资源后附加新的数据,方法要求被请求服务器接受附在请求后面的数据,常用于提交表单。HEAD

请求获取由Request-URI所标识的资源的响应消息报头。PUT

请求服务器存储一个资源,并用Request-URI作为其标识

DELETE

请求服务器删除Request-URI所标识的资源

2.4.2响应格式

在接收和解释请求消息后,服务器返回一个HTTP响应消息。HTTP响应也是由三个部分组成,依此是状态行、消息报头和可选的响应正文,注意报头和正文间有一个空白行。格式如下:

1状态行、

2消息报头

3空白行

4可选的响应正文状态行具体格式如下

HTTP-VersionStatus-CodeReason-Phrase其中:HTTP-Version表示服务器HTTP协议的版本;Status-Code表示服务器发回的响应状态代码;Reason-Phrase表示状态代码的文本描述。

2.4.2响应格式状态代码有三位数字组成,第一个数字定义了响应的类别,且有五种可能取值:

1xx:指示信息--表示请求已接收,继续处理

2xx:成功--表示请求已被成功接收、理解、接受

3xx:重定向--要完成请求必须进行更进一步的操作

4xx:客户端错误--请求有语法错误或请求无法实现

5xx:服务器端错误--服务器未能实现合法的请求

2.4.2响应格式下面对一些常见的状态代码和状态描述进行说明:200OK

//客户端请求成功

400BadRequest

//客户端请求有语法错误,不能被服务器所理解

401Unauthorized//请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用

403Forbidden

//服务器收到请求,但是拒绝提供服务

404NotFound

//请求资源不存在,eg:输入了错误的URL

500InternalServerError//服务器发生不可预期的错误

503ServerUnavailable

//服务器当前不能处理客户端的请求,一段时间后可能恢复正常

例如:HTTP/1.1200OK2.4.3消息报头格式

无论是请求还是响应都有报头报头分成普通报头、请求报头、响应报头和实体报头四种类型。每种报头都有许多行组成,每个行的格式如下 报头域名字:值2.4.3消息报头格式

常见的报头域

Accept Accept请求报头域用于指定客户端接受哪些类型的信息。 例如:

Accept:image/gif,表明客户端希望接受GIF图象格式的资源;

Accept:text/html,表明客户端希望接受html文本。

Server Server响应报头域包含了服务器用来处理请求的软件信息。下面是Server响应报头域的一个例子:

Server:Apache-Coyote/1.1Date

该域表示消息产生的日期和时间。

2.4.4超文本

超文本(Hypertext)是用超链结将各种不同空间的文字信息组织在一起的网状文本。超文本普遍以电子文档方式存在,其中的文字包含有可以链结到其他位置或者文档的连结,允许从当前阅读位置直接切换到超文本连结所指向的位置。目前最常使用的是超文本标记语言(HyperTextMarkupLanguage,HTML)及富文本格式(RichTextFormat,RTF)。超文本技术的本质就是在文档内部和文档之间建立关系,通过这种关系给了文本以非线性的组织。3.1HTML

HTML(HyPerTextMarktlPLanguage,超文本标记语言)是一种用来制作超文本文档的简单标记语言,它实际上是标准通用标记语言(StandardGeneralizedMarkupLanguage,SGML)的一个子集。虽然HTML语言只是建议Web浏览器应该如何显示和排列这些信息,最终在用户面前的显示结果取决于Web浏览器本身的显示风格及其对标记的解释能力。3.1HTML

(l)无法支持后台数据库。(2)无法有效地对站点信息进行及时的更新。(3)无法实现动态显示效果。3.2DHTML

DHTML即动态的HTML语言(DynamicHTML),DHTML并不是一门新的语言,它是以下技术、标准或规范的一种集成:

(1)HTML4.0(演示1-1.html)(2)CSS(CascadingStyleSheets,层叠样式单)

(3)CSSL(Client-SideScriptingLanguage,客户端脚本语言,例如JavaScript,VBscript语言)

(4)HTMLDOM(HTMLDocumentObjectModel,HTML文档对象模型)。3.3XML

XML代表可扩展的标记语言(EXtensibleMarkupLanguage的缩写)。XML是一套定义语义标记的规则,这些标记将文档分成许多部件并对这些部件加以标识;它也是元标记语言,即定义了用于定义与特定领域有关的、语义的、结构化的标记语言的句法语言。演示1-2.xml3.4JavaScript

JavaScript是目前使用最广泛的脚本语言,它是由Netscape公司

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论