user-agent

x-up-calling-line-id: 终端用户手机号码

-------------------------------------------------------------------

X头域解析



X头域是HTTP请求中以X为开头的头域的统称。简单的说,这些头域是一些非标准HTTP协议所包括的或者是专有的。在开发移动门户时,这些头域会起到很有趣的作用。我将我x头域的搜集结果分享一下。

X头域可以在诸多方面得到应用:用户身份认证,设备辨识,网络特性确认等等。无论是从创建良好的移动应用体验还是从满意度来看,这些信息都是很有用的。

头域名称 涵义
x-forwarded-for 客户端连接至服务器的源IP地址
x-forwarded-host 源主机名

x-forwarded-server 源服务器名
x-wap-profile 遵循指定标准的用户代理配置
x-wap-profile-diff wap网关或代理可以选择性的覆写用户代理配置。其区别于此指定

其它有意思的头域:

头域名称 涵义
x-apn-id: 接入点识别。Wap、因特网、电子邮件等可以拥有不同的接入点设置。
x-charging-id: 有人知道这是干啥用的么?其值为空
x-drutt-3pi-request-uri Drutt是一个由爱立信提供的业务支持系统。这个头域的作用未知……
x-drutt-3pi-serviceid 未知

x-drutt-device-id 以名称识别设备。如:“Nokia_N95__S60_browser_”
x-drutt-request-id 未知
x-ebo-ua: 未知
x-ggsnip: 包含网络中GGSN的IP地址
x-h3g-cc 未知
x-h3g-client-ip 设备处于当前网络的IP。session识别
x-h3g-customer-subtype 识别客户定制类型
x-h3g-customer-type 识别客户类型
x-h3g-device-name 设备名称。比如:Nokia-N95-Safari
x-h3g-nc 未知,其值为"4".
x-h3g-network-quality 网络类型,比如"3G"
x-h3g-party-country 标示用户国家
x-h3g-party-id 未知
x-h3g-party-status 未知
x-h3g-party-user-id 未知
x-h3g-roaming-status 标示用户是否处于漫游状态。布尔值
XID: 未知
x-jphone-color 一些softbank相关的东西
x-jphone-display 屏幕尺寸

x-jphone-msname 未知,示例值:821P
x-jphone-region: 未知
x-jphone-smaf 未知,示例值: "40/pcm"
x-jphone-uid: 我猜是用户id
x-lori-time-1: 未知
x-net-info 未知
x-network-info: 包含承载网络(比如GPRS)内部IP地址之类的信息
x-os-prefs: 标示设备能力。示例值: "fw:240; fh:320; cd:24c; pl:3; pj:1; pa:1;pi:1;ps:2;"
x-proxy-id: 未知
x-psp-browser PSP浏览器版本
x-psp-productcode 未知,示例值: "CEL"
x-roaming: 漫游信息。取值 "Yes" 或 "No"
x-sgsnip: SGSN的IP地址

x-source-id 未知
x-wapipaddr: wap网关的IP地址

x-wap-proxy-cookie: cookie?
x-wsb-contextid 未知,Vodafone(沃达丰)相关的东西?

由 OpenWave 网关获得的头域。我对这个不太熟,所以我直接查的wirelessFAQ

头域名称 涵义
x-up-calling-line-id: 终端用户手机号码
x-up-devcap-accept-language: 与accept-language头域类似
x-up-devcap-cc: 未知,示例值:1
x-up-devcap-charset: 字符集

x-up-devcap-charset: utf 字符集相关

x-up-devcap-immed-alert: 未知
x-up-devcap-iscolor: 布尔值,定义设备是否为彩色屏幕
x-up-devcap-max-pdu: 最大负载值
x-up-devcap-msize: 未知
x-up-devcap-numsoftkeys: 设备软键数目
x-up-devcap-screen-chars: 一行能容纳的字符数?
x-up-devcap-screendepth: 色深

x-up-devcap-screenpixels: 以点为单位的屏幕尺寸
x-up-devcap-smartdialing: 不知道智能拨号是干啥的。可能是一键拨号功能吧。
x-up-devcap-softkeysize: 未知
x-up-fax-accepts: 未知
x-up-fax-limit: 未知?
x-up-subno: 某种最终用户ID
x-up-uplink: 看起来像是wap网关的dns名称
x-up-wappush-secure: 未知
x-up-wappush-unsecure: 未知
x-up-wtls-info: 未知

诺基亚wap网关头域:

头域名称 涵义
x-nokia-alias 最终用户手机号,加密
x-nokia-bearer: GPRS之类的
x-nokia-connection_mode 一般是TCPIP
x-nokia-gateway-id: wap网关标识。看起来跟Via头域差不多的用法
x-nokia-imsi: Imsi值
x-nokia-ipaddress: 内部IP地址

x-nokia-localsocket: 内部IP地址和端口号

x-nokia-msisdn: 用户手机号,普通文本
x-nokia-musicshop-bearer Nokia音乐商店。典型值 "GPRS/3G"
x-nokia-musicshop-version: Nokia音乐商店版本号
x-nokia-prepaidind: 与定制相关的东西。取值 "4"

代码转换头域

头域名称 涵义
x-novarra-device-type: Novarra头域,作用未知,取值为"0"
x-operamini-features: Opera Mini代理加上的头域。取值为 "advanced, download, camera, folding, inputhints"
x-operamini-phone: Opera Mini代理提供的手机名
x-operamini-phone-ua: 使用Opera Mini浏览器的设备原始用户代理名称
x-original-user-agent: 由Googles转换的发至服务器的原设备用户代理名称
x-surfopen-msisdn: 一些SurfOpen的东西。取值标示着此对话为人为创建
x-moz: 未知,但看起来像是代理的行为。取值为"prefetch".
x-bluecoat-via 不明白这是什么。但可能跟bluecoat. 有关。是它的转换代码?
x-mobile-gateway: 标识网关/代理。比如:"Novarra-Vision/6.9 (TELIASONERA; Server-Only)"
x-mobile-ua: Mowser 转换的原始用户代理
x-device-accept: 经过转码的设备原始accept头域。比如; Novarra. 这是w3c鼓励的行为方式

x-device-accept-charset: 如前
x-device-user-agent: 如前

可以用来识别最终用户的头域

头域名称 涵义
x-drutt-client-ip 手机当前的IP地址。取值为内部10.开头的内部IP
x-drutt-portal-user-id drutt系统中用户唯一识别码
x-drutt-portal-user-msisdn 手机号码
x-h3g-msisdn 手机号码
x-imsi: imsi号码。辨识最终用户
x-msisdn 最终用户手机号码

x-nas-ip: 未知,但取值为一内网IP
x-wap-clientid: 看起来好似唯一用户识别码
x-wap-personalization: 无线网内设备IP
x-wsb-identity 最终用户手机号
x-wte-msisdn: 说是手机号码,但看起来不像
x-nokia-imsi: Imsi值
x-nokia-alias 用户手机号,密文
x-nokia-msisdn: 普通文本形式的用户手机号
x-up-calling-line-id: 最终用户识别码

AvantGo 头域


头域名称 涵义
x-avantgo-browser 标识AvantGo浏览器
x-avantgo-channelid 显而易见的
x-avantgo-clientcharset 客户端字符集
x-avantgo-clientlanguage 客户端语言设置
x-avantgo-colordepth 取值: "MTY"
x-avantgo-cradlesync 取值: "TRUE"
x-avantgo-deviceid 标识设备的代码
x-avantgo-deviceos 操作系统?
x-avantgo-deviceosversion 操作系统版本?
x-avantgo-deviceprocessor 处理器名称?
x-avantgo-platformdata ?
x-avantgo-screensize 提供屏幕尺寸的字符串。取值示例:"MTUweDo1MA"
x-avantgo-tracking-referer ?
x-avantgo-url 如果它标示URL,那应该是加密的

x-avantgo-userid 最终用户为一识别码
x-avantgo-version AvangGo版本

 

本文源自:http://hi.baidu.com/motiansen/blog/item/29ca03a40d6f78e79052eeb9.html

package test; import java.io.DataInputStream; import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.RandomAccessFile; import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.params.HttpMethodParams; import org.junit.After; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; public class TestGetGroup { @Test public void main() { // getfile("http://localhost/getportrait.do?Uri=tel:13811094505&Size=2400", // "F:\\testpicture\\11111.jpg"); // getTest("http://web.devtest.mypica.com:8082/getportrait.do?Uri=tel:13811094505&Size=96", // "F:\\testpicture\\11111.jpg"); getTest( "http://218.241.177.244:3080/GetGrouPortrait.do?group-uri=sip:3000558@fetion.com&Size=96", "F:\\testpicture\\ggggg.jpg"); // getTest( // "http://127.0.0.1:8080/GetGrouPortrait.do?group-uri=sip:3000558@fetion.com&Size=96", // "F:\\testpicture\\ccccc.jpg"); } @BeforeClass public static void setUpBeforeClass() throws Exception { } @AfterClass public static void tearDownAfterClass() throws Exception { } @After public void tearDown() throws Exception { } private static void getTest(String strURL, String saveFilePath) { // 构造HttpClient的实例 HttpClient httpClient = new HttpClient(); // 创建GET方法的实例 GetMethod getMethod = new GetMethod(strURL); // 使用系统提供的默认的恢复策略 getMethod.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new DefaultHttpMethodRetryHandler()); getMethod.setRequestHeader("X-Up-Calling-Line-ID", "13800138006"); getMethod.setRequestHeader("Accept", "image/png,image/jpeg,image/Gif"); try { // 执行getMethod int statusCode = httpClient.executeMethod(getMethod); if (statusCode != HttpStatus.SC_OK) { System.err.println("Method failed: " + getMethod.getStatusLine()); } // //读取内容 // byte[] responseBody = getMethod.getResponseBody(); // //处理内容 // System.out.println(new String(responseBody)); InputStream stream = getMethod.getResponseBodyAsStream(); DataInputStream in = new DataInputStream(stream); File savedFile = new File(saveFilePath); RandomAccessFile oSavedFile = new RandomAccessFile(savedFile, "rw"); byte[] inc = new byte[1024]; int insize = 0; while ((insize = in.read(inc)) != -1) { oSavedFile.write(inc, 0, insize); } oSavedFile.close(); in.close(); } catch (HttpException e) { // 发生致命的异常,可能是协议不对或者返回的内容有问题 System.out.println("Please check your provided http address!"); e.printStackTrace(); } catch (IOException e) { // 发生网络异常 e.printStackTrace(); } finally { // 释放连接 getMethod.releaseConnection(); } } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值