当前位置:编程学习 > wap >>

WAP技术与网站建立

答案:

一、WAP概述

WAP(Wurekess Application Procol:无线应用协议)最初由WAP论坛开发。这项新技术将无线移动通信技术和Internte结合起来,通过提供通用的平台,把目前Internet网上HTML (Hypertext Markup Language)语言描述的信息转换成用WML (Wireless Markup Language) 语言描述的信息,显示在移动电话的显示屏上。

由于移动通信网络和无线终端在传输Internet数据方面存在着明显的局限性,主要表现在网络时延、网络带宽、终端处理和显示能力等方面。为了克服这些障碍,在1997年6月26日 由Nokia、Ericsson、Motorola、Phone.com四家公司创立了WAP论坛,并于1997年12月正式 成立为拥有众多成员的行业协会。由于WAP论坛的成员拥有全球手机市场90%以上的份额,并 代表着超过1亿订户的电信公司、领先基础设施提供商、软件开发商和向无线行业提供解 决方案的其他机构。它致力于开发用于数字移动电话和其他无线终端设备的无线信息与电话服务。所以,WAP成为在事实上的全球标准。WAP论坛目前已发布的WAP标准有WAP.0,WAP1.1,以及1999年12月发布的WAP1.2。

WAP被认为是一个综合性的可伸缩的协议,它主要用于设计:从普通的移动电话到未来的灵巧电话;各种现有的和规划的无线服务,如:SMS、USSD和GPRS等;各种移动网络标准,如码分多址访问(CDMA)、GSM和通用移动电话系统(UMTS);多种输入终端,如键盘、触摸屏等。

WAP在移动电话中集成了一个结构相对简单的微浏览器,而将更多的处理能力放到WAP服务器中来增加各种增值服务,不必对硬件进行太大的改动,基于浏览器的服务和应用只是临时驻留在服务器上,而不是永久性地位于电话中,这使它非常适合于瘦客户端和早期的灵巧电话。WAP的目标是将移动电话转换成一个“基于网络的灵巧电话”,尽可能通过丰富的网络 功能来补偿移动设备的限制。

WAP采用和扩展了以前开发的无线数据协议,如由Phone.com开发的技术和Nokia开发的Smart Messaging。当时Phone.com为了经济而有效地将信息通过移动网络进行传输,创建了HTML协议的一个子集HDML。这项技术现在已经集成到WAP中。WAP移动电话用户使用内置的微浏览器通过WML发出访问请求。

据预测,到2004年全球无线Internet手机用户将达到4亿,这将推动WAP应用迅猛发展。不久前,中国移动通信集团公司在上海、广东、北京、天津、杭州、深圳6大城市同时开出WAP 商用实验网,全国其它地方都可以接入,象征着我国无线通信技术进入信息实时性等特点的业务被越来越多的移动用户所喜爱。可以说,移动网络与Internet及企业网之间的桥梁已经架起,移动Internet的春天已经来临。

二、WAP的基本技术

WAP系统模型见图1所示,由三部分组成,即WAP网关、WAP内容服务器和WAP手机。其中WAP网关起着协议的翻译作用,是联系GSM网与万维网的桥梁。网关与服务器之间通过HTTP1.1协议进行通信,这就意味着服务的提供者几乎可以不改变信息的内容,只要增加网点设备就可以向移动用户提供信息服务;WAP内容服务器存储着大量的信息,供WAP手机用户来访问、查询、浏览。当用户从WAP手机键入他要访问的WAP内容服务器的URL后,信号经过无线网络, 以WAP协议方式发送请求至WAP网关,然后经过“翻译”,再以HTTP协议方式与WAP内容服务 器交互,最后WAP网关将返回的内容压缩、处理成BINARY流返回到客户的WAP手机屏幕上。WA P手机内含WAP微浏览器和无线电话接口(WTAI)。微浏览器负责解释WML和WMLScript。

WAP最重要的地方就在于它首次定义了一个开放的、标准化的结构,以及一系列的标准以实现Internet的无线接入访问。WAP协议包括以下几层:

1.WAE(Wireless Application Environment:无线应用环境)

WAE基于WWW和移动电话技术的通用目的应用开发环境,主要目的是建立一个可操作的环境,给生产商和服务商提供开发应用和服务的环境。WAE包含了一个基于浏览器的微型环境,主要有如下功能:

●无线标记语言(WML):专门为移动终端优化设计的类 似于HTML的轻型标记语言;

●WMLScript:类似于JavaScript和VCScript的轻型脚本语言;

●无线电话技术应用(WTA):电话技术服务和程序设计界面;

●内容开本:一组明确的数据格式集合,包括图象、电话号码记录、日历信息。

2.WSP (Wireless Session Protocol:无线会话协议)

WSP为WAP应用层在两个会话服务间提供了一致的接口,第一个是运行在事物层协议WTP上的面向连接的服务,第二个是运行于安全或非安全数据报服务(WDP)上的无连接服务。WSP中的协议是对窄带、长时间延时的承载网络优化过的。

3.WTP (Wireless Transaction Protocol:无线事务协议)

WTP运行在数据报服务上,提供了轻型的面向事务的协议,适合在瘦客户机上实现。

4.WTLS (Wireless Transport Layer Security:无线传输层安全)

WTLS是建立在工业标准TLS(传输层安全)协议上的安全协议,以前称为SSL。

WTLS提供了数据完整性、私有性、认证、服务拒绝保持等特征。可用于不同终端之间的安全通信。

5.WDP (Wireless Data Protocol:无线数据报协议)

WAP协议的传输由WTP和WDP组成。WDP运行在数据承载服务上,支持不同的网络类型,作为通用传输服务,WDP对协议的上层提供了一致的服务,而对底层网络是透明的。UDP/IP (User Data Protocol)是一种面向无连接的数据报格式。

6.其他的服务和应用

WAP分层结构使它的服务和应用能够通过事先定义的接口利用WAP的协议栈,扩展应用能够通过接口直接访问会话层、事务层、安全和传输层。扩展应用和服务包括电子邮件、电子本 、记事本、电子商务、白页、黄页等。

WAP体系结构为移动通信设备的应用提供了一个可缩放和可扩展的环境,通过完全协议堆 的分层设计完成。

三、WAP系统的构成

WAP系统可由以下几个实体组成:WAP网关、防火墙、接入服务器、域名服务器(可选)、各种)WWW、Email等)应用服务器(可选),具体系统构成。

下面简要介绍各实体的主要功能:

1.WAP网关(GATEWAY)

WAP网关主要用于将无线移动通信网与互联网进行连接,并作为从互联网获取数据的代理 服务器(PROXY),完成从Internet协议到WAP协议的转换和语言编码转换,提供编码/解码的 全过程,保证通信信息的安全传输,并提供对非WAP格式内容的过滤等。WAP网关可与WAP门 户/业务站点分离,也可以与WAP门户/业务站点

[page_break] 集成在一起。

2.接入服务器(NAS)

接入服务器(Network Access Server,简称NAS)是远程访问接入设备,它位于电路交换网 (PSTN/ISDN/GSM等)与IP网之间,将拨号用户接入IP网。电路方式的WAP业务必须通过接入服务器与GSM互联。WAP终端通过拨号方式接入接入服务器后,可进行用户认证,通过后得到由 接入服务器动态分配的IP地址,成为IP网上的一个可通达主机点。

3.应用服务器

应用服务器的主要功能是为WAP用户提供各种不同的WAP业务,如信息浏览、收发邮件、语音综合业务等。它可能包括WWW服务器、邮件服务器、WTA服务器等。

4.域名服务器(DNS)

域名服务器主要负责Internet上域名与IP地址的翻译工作。

5.防火墙

通过对出入本地局域网的IP包进行过滤等方法达到对本地局域网信息及设备的防护功能。

6.WAP移动用户终端

WAP移动用户终端内置WAP浏览器,有编/解码功能,可支持多种服务业务,图中置于GSM网内。

根据底层承载WAP业务网络的不同,可将WAP的组网方式划分为以下三种方式:电路方式、短消息方式和GPRS方式。

四、WAP的业务实现

(1)Internet信息浏览。

Internet信息浏览可以提供多种信息业务,如新闻、天气预报、股票查询、外汇牌价、交通状况、娱乐信息等等。

(2)电子邮件

(3)WTA

(4)PUSH

(5)用户定制

(6)综合业务,如电子商务等。

五、WAP网站的建立

WAP网站建立有三种方式:(1)网站主机在ISP处;(2)网站主机在某电信机房托管 ;(3)利用某第三方的服务器空间开设虚拟网站主机。这里以第三种方式介绍网站建立的一般方法。

为手机上网提供服务的WAP网站与通常的WWW网站不同。由于手机的屏幕非常小,带宽也较窄,因此目前WAP网站提供的多是字符型的内容,格式比较简单。

因网站是建设在远程的虚拟主机之上,这样就使网页更新比较困难,每有改动,就需重新上传网页。在这种条件下,要提供实时的动态信息就非常困难。为此,我们开发了在服务器端用于动态更新WAP网页的CGI程序,管理员可直接用浏览器在线更新网页。通过一个公共的界面,各种类型的信息都可以用这种方法输入。另外,此WAP网站也提供了站内信息搜索功能。

1.WML语言简介

WML(无线标识语言)与HTML(超文本链接标识语言)一样,也是基于XML(可扩展标识语言)的,是XML的一个子集。但WML是专门针对无线传输协议WAP而设计的,具有自己的特点。WML的 对象——无线通信设备相对于传统的网页浏览设备PC机具有如下的限制:他们的显示空间很小,用户输入不太方便;他们的接入带宽较小;他们的内存和处理器资源都受到很大限制。在这种情况下,为了尽量利用受限的资源为客户提供更好的服务,WML语言通过以下几项主要功能:WML支持字符和图象,字符可以用几种不同的方式显示:黑体、斜体、下划线、大、小字体等;WML文件被组织成卡片的形式,每个卡片含文本、选项、输入域等,用户通过 访问一系列的卡片而获得信息;WML提供了卡间的导航和链接;WML语言提供了状态模型和变 量替换机制,可用于浏览切换时的信息缓存。

2.WAP网站的基本结构

图4中的三幅图是用手机模拟器WinWap软件浏览的WAP网站的主页面main.wml的三张卡片。 从图中看到:该WAP网站提供分类的信息浏览(包括新闻、股票和本地信息)及信息查询 功能。其中主要链接的对应文件如表1所示:

由于手机的带宽及存储量有限,在分类浏览时只提供最新的信息,但 重要的 新闻可放入“过往新闻guowang.wml”文件,可用搜索的方式得到。这样就兼顾了新闻的全面性和网页简短的要求。

3.WML页面自动生成程序

由前所述,为了适应目前的硬件条件,同时提供实时信息服务,必须开发一个在服务器端动态更新网页的程序,这个程序的输入界面是基于WWW和HTML的,但他为WAP网站服务,将WWW浏览器上输入的信息,自动地转化为WML格式,每条输入信息对应一个单独的卡片,供手机上网浏览。

该程序由wmlnews、inputnews、wmlout、wmldel几个分程序组成。需要注意的是,无论是添加和删除信息,都必须在所得的网页中维持一个连贯的卡片序列,每个卡片必须有单独的名字,都必须有指向下一张卡片的链接(“下一条”,如图5所示)。为了达到这个目的,在程序实现中,保证无论作怎样的操作,始终是第一张卡名为“card1”,第2张’ca rd2”,依次类推。实现的原理是:当加入一条信息时,后面的卡号依次加1,其链接也加1 ;删除时,根据前面删除卡的数量,对后面的卡号也做相应调整。下面结合管理员输入与删 除操作的过程说明各个程序的功能。

当管理员希望更新网页时,调用wmlnews.cgi程序。该程序在验证了管理员信息后在浏览 器上产生信息输入界面,如图6所示。在页面左边可选择输入信息的种类;系统已自动给出了当前的时间,若有必要可任意更改;右下是信息内容输入区。

输入完成并点击确认按钮后,系统调用并将输入信息通过表单发送给input new.cgi程序。 该程序验证管理员身份后,从表单中取出信息,并针对WML语言作一定的格式转换。然后, 程序根据信息类别打开相应的WAP网页,读入原有信息,将原有卡号加1,再将本条信息作为 第一张卡片加在网页的最前面。另外,在输入“友情链接”时,应输入WML语言链接标记: 〈a href=>

inputnew.cgi程序在完成WML网页更新以后,将在WWW浏览器上依次将该类 信息所包含的内容显示出来(如图7所示)。在每条信息之后提供“删除”选项和“移到过往新闻”选项,点击相应选项并确定以后,系统将调用wmldel.cgi程序完成相应的操作。wmldel.cgi程序在验证管理员信息后,从wml文件中读入原有的全部信息,然后对每条信息,分别从表单中读入 它的“check?和“move”属性值,若“check”为真,则去掉该信息;若’move”为真,则 在去掉该信息的同时将它写到过往新闻文件guowang.wml中去;若都为假,则保留信息不变 。在对信息进行处理的同时,要修改各个信息卡片的代号和链接,保证卡片链的完整性。

wmlout.cgi程序通过向浏览器发送空cookie,覆盖管理员信息来达到退出登录的目的。在执行了wmlout.cgi程序后,必须要重新登录才能继续输入。

4.WAP信息搜索程序

WAP网站信息搜索程序search.cgi通过关键词匹配的方法对网站内的所有信息进行搜索。 搜索范围有三种:全部信息、新闻和非新闻信息,可在搜索界面上选择,如图8所示。在WAP 界面上有两个入口可进入信息搜索界面,分别是主窗口和新闻窗口(参见图4)。从前者进入,缺省的搜索范围是所有信息;从后者进入,缺省的搜索范围是新闻。这样在大多数情况 下不用进行相对繁琐的选择工作,但又保存了必要的灵活性。

搜索程序search.cgi需要将搜索到的信息组成一个新的页面(卡片链)并发 送给用户,因此,当它搜索到相关信息后,首先需要找到该信息所在卡片的头和链接语句的位置,然后去掉原有的标号和链接,根据已搜索出的信息数量建立新的标号和链接,最后将该卡片发送给用户。

上一页  [1] [2] 

上一个:搭建WAP应用开发环境
下一个:WAP中的ASP技术之五

更多图片编程知识:
更多wap疑问解答:
为什么程序都退出了还可以收到推送?如果大多设备都可以推送那运营商怎么办?
qt 4.7 sqlserver2000 存储过程调用
Android FrameBuffer读屏幕30秒后mmap失败
联通粗定位用java程序如何来请求和接受数据
为什么QT运行Android平台的程序时,mouseMoveEvent事件响应的间隔时间很长??????????
android与PC蓝牙通讯
指定大小的label 内容可变,如果内容超出label的宽度,将未能显示的部分显示在另一个label上
android如何通过wifi连接无线打印机
运行程序,release目录下产生一个乱码文件夹
分享个某机构最新安卓资料,自己验证了
求助:QT5.0 没有QPrinter吗
直接调用 openmax IL 做 h264 解码, 有人会吗?
android在锁屏界面之上添加一个View
Bada模拟器如何访问pc机上的web
18396828106@163.com
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,