永发信息网

如何在Android应用里对HTTP请求头部添加适当的User-Agent字段

答案:2  悬赏:60  手机版
解决时间 2021-02-24 21:22
如何在Android应用里对HTTP请求头部添加适当的User-Agent字段
最佳答案
Mozilla/5.0 (Linux; Android 4.0.3; U9200 Build/HuaweiU9200)
对于安卓App来说,默认情况下的HTTP请求Header是不会带上这么一串字符串的。如果要带必须得自己构造了,我摸索了半天,还是找到了达到和浏览器同样格式的设置User-Agent的方法:
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
// HttpPost httpPost = new HttpPost(url); // 如果是POST请求,则改为注释掉上面一行
// MY_APP_NAME为APP名称,MY_APP_VERSION_NAME为应用的版本名
httpGet.setHeader("User-Agent", String.format("%s/%s (Linux; Android %s; %s Build/%s)", MY_APP_NAME, MY_APP_VERSION_NAME, Build.VERSION.RELEASE, Build.MANUFACTURER, Build.ID));
全部回答
一般Web浏览器在访问各个网站时,会在HTTP请求的Header里设置User-Agent字段,表示请求者的身份信息,比如在我华为U9200的Android手机上,打开Chrome浏览器后,每个访问请求的User-Agent字段如下:
?
Mozilla/5.0 (Linux; Android 4.0.3; U9200 Build/HuaweiU9200)
对于安卓App来说,默认情况下的HTTP请求Header是不会带上这么一串字符串的。如果要带必须得自己构造了,我摸索了半天,还是找到了达到和浏览器同样格式的设置User-Agent的方法:
?
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
// HttpPost httpPost = new HttpPost(url); // 如果是POST请求,则改为注释掉上面一行
// MY_APP_NAME为APP名称,MY_APP_VERSION_NAME为应用的版本名
httpGet.setHeader("User-Agent", String.format("%s/%s (Linux; Android %s; %s Build/%s)", MY_APP_NAME, MY_APP_VERSION_NAME, Build.VERSION.RELEASE, Build.MANUFACTURER, Build.ID));
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
民生源稍麦饸饹面北环盛世店我想知道这个在什
达州到昆明的k691次火车过没得??
ups电源输入有相序保护吗?
银鑫花苑地址在什么地方,想过去办事
“中国结”有哪些象征意义
我的楼房刚交钥匙上沙石料用电梯要向物业交两
地板有缝重新铺是整个房间都拆还是只拆有缝隙
颖辉饰家装饰城我想知道这个在什么地方
判断f(X)=X^2,X属于[-2,3]的奇偶性
三里屯有什么好吃的 三里屯美食推荐
若人造卫星绕地球做匀速圆周运动,则离地面越
照样子,拼一拼,并给音节组词
大街上免费皮肤测试是不是骗人的啊
红米note手机好端端打不出去,别人也打不进来,
怎么查别人信用卡欠款
推荐资讯
若函数f(x)=x+x3,x1,x2∈R,且x1+x2>0,
我庆幸遇见你,却遗憾只是遇见你 怎样恢复下
老师,这种番茄是什么?
我的JJ流黏液,怎么回事?
word中如何设置页码,从正文开始
汽车气囊拆了之后气囊指示灯会亮吗
海闽温泉酒店在什么地方啊,我要过去处理事情
自己个人全额去交社保养老合算吗
海上"活火箭“指的是那种动物?会飞行吗?
龙门大弟食府在什么地方啊,我要过去处理事情
宝洁面试超过一小时是不是说明面试官有兴趣
我是乘客怎么看到顺风车的价格
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?