作者: BUILDER.COM
WAP(无线应用协议:Wireless Application Protocol)协议就是移动Internet应用程序的标准通信协议。它的主要设计目标是为移动设备访问Internet或者内联网提供一种经过优化的开放标准。
诞生之初,WAP被吹捧为一种革命性的通信应用技术,整个移动计算世界都似乎都要因其改头换面。然而, WAP和采用WAP协议的各类服务却因为移动设备、移动网络本身的局限性而并没有起到人们所预想的作用,移动网络和设备的主要局限在于:
显示屏幕窄小
设备内存容量有限
CPU计算能力不足
可用带宽太小
连接不可靠
延迟过大
不过,在WAP的新版本——WAP 2.0出现之后情况就有所变化了。下面我对WAP及其利用WML显示内容的技术做简单阐述。另外我还会说明一下WAP 2.0在1.x版本基础上到底有了哪些技术上的提高和改进,最后会阐述些继续使用目前的1.x版本的理由。
WAP工作原理
在通过桌面计算机操作系统上的浏览器访问网站时,客户程序会对数据提出请求,而服务器则负责把这些数据以HTML的格式通过IP网络传送给客户机。Web浏览器再把这些HTML数据转换为用户可读的文本和图象。
在你的移动设备上情况就有点不同了, WAP通过一种所谓的WAP浏览器取代了Web浏览器的位置,设备可以通过它向网站请求数据。通过桌面PC浏览器和WAP 1.x浏览器访问数据的主要差别就在于, WAP浏览器必需用到WAP网关这种通信实体。这种所谓的WAP网关在功能上等同于移动网络和和Internet网络之间的中介。WAP网关位于WAP浏览器和Web服务器之间,它对内容进行必要的二进制编码,同时还能对WML和HTML代码进行相互转换。
采用WAP的理由
上面提到过移动通信存在相当程度的局限性,不过采用WAP实现移动Web浏览还是有充足理由的:
WAP有其自身的安全模式,其在线工作原理类似Web安全性。哈系算法、数字证书和公钥密码技术等为WAP真实交易提供了关键的安全保护。
WAP开发相当简单。WML和WMLScript几乎为移动Internet应用程序提供了它们所必要的一切准备。WML或WMLScript学起来也不难;大多数程序员上手非常快。
WAP已经得到了广泛接受。无线通信市场的主流厂商(比如诺基亚、摩托罗拉和爱立信等公司)都非常积极地参与了WAP标准的制定过程。
WAP是一种独立的标准。这就是说,即便转到GPRS网络也丝毫不会影响网络浏览。而更好的数据传输速度只会令浏览体验更完美更方便。
WAP 和 WML
WML(无线标记语言:Wireless Markup Language)是就WAP体系结构的有机组成部分(请参看图A)。WML是一种基于XML的标记语言,其开发和维护工作由WAP论坛负责。
图A
WAP体系结构
WML实际上就是一种坚持预定义规则、具有良好格式的XML语言。它采用显示标签以移动设备所适合的格式表示数据。在理想的情况下, Web服务器可以提供只能由WAP浏览器显示的WML内容。某些WAP网关则甚至可以把HTML转换为WML。可是,你最好不要指望这种特性,因为它其实并没有提供真正意义上准确的WAP显示内容。
WAP 2.0全新登场
2.0版本的WAP吸纳了更多的Internet标准。由W3C定义的XHTML 基本版已经成为了WAP 2.0的基本。XHTML Basic就是XHTML 1.0的移动版本,WAP论坛以它为基础开发出了XHTML Mobile Profile。
WAP CSS则是层叠样式表CSS的移动版本,它只具备CSS同移动环境有关的一些特性。XHTML和CSS为开发人员提供了更强大的格式化能力。在采用XHTML和CSS的情况下,你甚至可以在具有不同内容表示功能的移动设备上显示同样的文档。此外,WAP 2.0还包含了WML 1.x扩展以保证标准的后向兼容性。
在WAP 2.0标准中,WAP网关不再成为WAP体系结构中的关键组成部分。此外,内容也不再必须采用二进制编码;XHTML继续采用文本格式。可是,由于许多人还要依靠那些必需WAP 1.0标准的移动设备,同时因为WAP/WSP协议栈仍用于传输用途,所以你还要支持WAP 1.0网关。
所以说,即便WAP 2.0提供了相当强大的功能,在一段时间之内,你却可能还得在1.x标准之内进行可靠而安全的开发工作。