发布于2026-07-22 阅读(0)
扫一扫,手机访问
说到WAP网站的CGI编程,很多人第一反应就是“又要折腾服务器配置了”。没错,想让手机浏览器能正确解析WML页面,第一步还真得先搞定服务器端的MIME类型注册。这事儿其实不难,但不同环境下的操作方式略有差异,咱们一个个来看。
如果你用的是IIS4,那最简单——打开站点管理器,在站点属性里找到“MIME类型”设置,新增一条:后缀填 .wml,MIME类型填 text/vnd.wap.wml。搞定。
要是还在用PWS(比如Windows 98时代的老环境),那就得动注册表了。分两步走:
HKEY_CLASSES_ROOT 下新建主键 .wml,然后给它添加一个字符串值 Content Type,内容设为 text/vnd.wap.wml。HKEY_LOCAL_MACHINE\Software\CLASSES\MIME\Database\Content Type 下,新建主键 text/vnd.wap.wml,再添加一个字符串值 Extension,内容填 .wml。早年流行的HDML也类似,改个后缀和MIME类型就行,这里就不赘述了。
配置完成后,直接在手机浏览器的地址栏输入 http://localhost/test.wml,只要能正常显示内容,就说明服务器已经认WML了。
CGI这块和普通ASP/PHP开发其实没太大区别,唯一容易踩的坑就是:**返回结果时,必须先输出正确的Content-Type**。具体来说,必须在脚本最前面把响应头设置为 text/vnd.wap.wml,然后再输出WML内容。否则手机浏览器会直接当成普通文本,页面就乱掉了。
下面给一个完整的例子,包含了WML前端的输入页面和后端的ASP处理脚本,大家可以对照着看。
NAME:
<%
uid = Request.Form("uid")
userName = Request.Form("uname")
Response.ContentType = "text/vnd.wap.wml"
%>
USERNAME:<%=userName%>
USER__ID:<%=uid%>
这里有两个细节值得注意:一是前端用 postfield 提交表单数据时,记得把用户输入的值用 $(userName:esc) 进行转义,防止特殊字符破坏WML结构;二是后端必须先设置 Response.ContentType,再输出XML声明和WML内容,顺序不能乱。
整个流程跑通了,一个简单的WAP交互应用就成型了。当然,实际项目中还会涉及session管理、用户认证等问题,但有了这个基础,后面都是举一反三的事。
上一篇:WML学习之五 显示表单
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8