当前位置: 首页 > news >正文

在.Net平台开发Wap的一些记录

一年前,用VS2005做了成绩查询系统和两个小的管理系统,当时时间比较紧没有总结,最近又看了一些这方面的开发资料,稍做记录分享一下,希望能与大家交流。

一,WAP是什么

     WAP(Wireless Application Protocol)即无线应用协议,WAP使移动Internet有了一个通行的标准,其目标是将Internet的丰富信息及先进的业务引入到移动电话等无线终端之中。WAP定义可通用的平台,把目前Internet网上HTML语言的信息转换成用WML(Wireless Markup Language)描述的信息,显示在移动电话的显示屏上。WAP只要求移动电话和WAP代理服务器的支持,而不要求现有的移动通信网络协议做任何的改动,因而可以广泛地应用于GSM、CDMA、TDMA、3G等多种网络。wap页面的语言为wml,WML支持文字和图片显示,内容组织上,一个页面为一个Card,而一组Card则构成一个Deck。当使用者向服务器提出浏览要求后,WML会将整个Deck发送至客户端的浏览器,使用者就可以浏览Deck里面所有Card的内容,而不需要从网络上单独下载每个Card。

标准的wml:


 
ExpandedBlockStart.gif 代码
<? xml version="1.0" ?>
<! DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml"
>
< wml >
< card  id ="HTML"  title ="HTML Tutorial" >
< p >
Our HTML Tutorial is an award winning 
tutorial from W3Schools.
</ p >
</ card >
< card  id ="XML"  title ="XML Tutorial" >
< p >
Our XML Tutorial is an award winning 
tutorial from W3Schools.
</ p >
</ card >
</ wml >

 

下方是在VS中生成的代码:

 

ExpandedBlockStart.gif 代码
<? xml version='1.0' ?>  
<! DOCTYPE wml PUBLIC '-//WAPFORUM//DTD WML 1.1//EN' 'http://www.wapforum.org/DTD/wml_1.1.xml' > < wml >< head >  
< meta  http-equiv ="Cache-Control"  content ="max-age=0"   />  
</ head >  
< card >  
< onevent  type ="onenterforward" >< refresh >< setvar  name ="txtUserName"  value =""   />< setvar  name ="txtPassWord"  value =""   /></ refresh ></ onevent >  
< p > 用户名: < input  name ="txtUserName"   />  
< br />  
密码:
< input  name ="txtPassWord"   />  
< br />  
< anchor  title ="登录" > 登录 < go  href ="Default.aspx"  method ="post" >< postfield  name ="__EVENTTARGET"  value ="LoginCommand"   />< postfield  name ="txtUserName"  value ="$(txtUserName)"   />< postfield  name ="txtPassWord"  value ="$(txtPassWord)"   /></ go ></ anchor ></ p ></ card >  
</ wml >

 

 

      早些年手机上网能够查看到的内容远没有现在这么丰富多彩,相信早些年用手机的朋友都知道,基本上都是文字,那是wap1.2版本,后来由于手机的硬件升级,逐步向掌上电脑的思想靠近,就有了手机操作系统发展,进而有了手机浏览器的发展,现在的ucweb浏览器在线看NBA直播都十分流畅,这个发展进程值得关注。

      和http协议,html用于PC浏览器访问Internet上的资源一样,手机浏览器访问时遵循的是WAP协议,wml语言。由于我们现在的手机浏览器绝大多数已经支持html,所以在做wap开发时会考虑到这个程序的语言问题,下面会说到.net平台开发wap程序的一些简单办法。

二,在.Net平台做wap开发

vs2005中包含了asp.net mobile controls,这些控件可以针对不同的浏览设备输出不同的代码,手机浏览就可以变成wml,PC浏览页面就会生成普通的HTML代码。当然,如果你希望程序一定要在客户端以wml形式存在,可以在webconfig中加上下列配置:

 

ExpandedBlockStart.gif 代码
< browserCaps >
< result type = " System.Web.Mobile.MobileCapabilities, System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a " />
< use var = " HTTP_USER_AGENT " />
preferredRenderingType 
=   " wml11 "
preferredRenderingMime 
=   " text/vnd.wap.wml "
preferredImageMime 
=   " image/vnd.wap.wbmp "
</ browserCaps >

 

 

转载于:https://www.cnblogs.com/wengyuli/archive/2010/05/25/1743416.html

相关文章:

  • 未能为 SSL/TLS 安全通道建立信任的解决办法
  • squid + dansguardian + iptable 实现网页过滤
  • 虚拟光驱文件bin/cue到iso的转换
  • 纯八卦一下。。。。。Orx的名字来源于一个沼泽。。。。
  • IE8 兼容视图 IE7 解决办法
  • SIGHUP信号与控制终端
  • IT技术的三个层次
  • Ruby connect to SQL server native client
  • Nmap使用方法
  • 系统蓝屏重起:如何修改设置,记录系统蓝屏重起的错误
  • Asp.Net应用程序配置Web.config
  • ubuntu9.10下构建tftp服务
  • WPF入门笔记
  • BusyBox 简化嵌入式 Linux 系统
  • 常用加密算法介绍--DES3
  • 4月23日世界读书日 网络营销论坛推荐《正在爆发的营销革命》
  • HTTP 简介
  • JAVA并发编程--1.基础概念
  • JAVA多线程机制解析-volatilesynchronized
  • js中forEach回调同异步问题
  • JS专题之继承
  • js作用域和this的理解
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • Python_网络编程
  • RxJS 实现摩斯密码(Morse) 【内附脑图】
  • spring boot 整合mybatis 无法输出sql的问题
  • Spring Boot快速入门(一):Hello Spring Boot
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 深度学习入门:10门免费线上课程推荐
  • 使用 QuickBI 搭建酷炫可视化分析
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 突破自己的技术思维
  • 一个完整Java Web项目背后的密码
  • 用jQuery怎么做到前后端分离
  • 白色的风信子
  • Java性能优化之JVM GC(垃圾回收机制)
  • RDS-Mysql 物理备份恢复到本地数据库上
  • #pragma 指令
  • #QT(智能家居界面-界面切换)
  • #每日一题合集#牛客JZ23-JZ33
  • (C#)一个最简单的链表类
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (附源码)spring boot北京冬奥会志愿者报名系统 毕业设计 150947
  • (附源码)springboot电竞专题网站 毕业设计 641314
  • (附源码)计算机毕业设计SSM在线影视购票系统
  • (附源码)计算机毕业设计大学生兼职系统
  • (四)JPA - JQPL 实现增删改查
  • (转)h264中avc和flv数据的解析
  • (转载)在C#用WM_COPYDATA消息来实现两个进程之间传递数据
  • ******IT公司面试题汇总+优秀技术博客汇总
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions