测试手机的 User-Agent

由于最近工作中需要得到一些手机的 User-Agent 以及 X-Wap-Profile 两个 HTTP 头的值,于是写了个简单的 PHP 程序,检测 HTTP 头,输出到 Response,然后放到网站上,让手机用 WAP 浏览器打开查看。

开始这个程序只是简单的输出纯文本,结果是 NOKIA、Sony Ericsson 以及 Samsung 手机都能正确读出,而 Motorola 却不行(实际测试过程中用的是 Motorola RAZR V3i),仅显示白页。

后来把程序改成输出标准 WML 页面,HTTP 头的 Content-Type 设置成 application/vnd.wap.xhtml+xml,NOKIA、Sony Ericsson 以及 Samsung 仍然能够正确显示而 Motorola 还是不合作。

最后找到答案,Content-Type 要设置成“text/vnd.wap.wml”,这下 Motorola 终于老实了…… 可是结果中只有 User-Agent,没有 X-Wap-Profile。

另外,在用中国移动的 SIM 卡测试的时候,发现 HTTP 请求中并没有 User-Agent 和 X-Wap-Profile 这两个头,而有个奇怪的

VIA: HTTP/1.1 SCCD-PS-WAP-GW02 (infoX-WISG, Huawei Technologies)

开始以为是手机的问题,但看到“Huawei”字样,觉得很蹊跷,后来换成 Orange France 的 SIM 卡,则一切正常了。

看来拦截 HTTP 请求是中国运营商的“优良传统”啊!

Update 2009/08/03:

最近发现中国移动这个问题只存在于 cmwap,用 cmnet 则正常。

发表评论

Login with Sina Weibo account

或者,也可以直接用下面的表单。 电子邮件地址不会被公开。

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

4 条评论

  1. 我这里出现被移动网关拦截,然后条跳转到一个错误的页面url,导致报404,没头绪该怎么解决?

    • 文中 PHP 小程序的连接在博客改变时失效了,已经改成了新的地址,测试过了,你再试试应该可以了。