怎么修改 User-Agent里面的内容
答案:3 悬赏:40 手机版
解决时间 2021-03-04 00:45
- 提问者网友:辞取
- 2021-03-03 06:43
怎么修改 User-Agent里面的内容
最佳答案
- 五星知识达人网友:人類模型
- 2021-03-03 07:13
// 获取当前默认的UserAgent信息
char szDefaultAgent[1024];
DWORD dwSize = 1024;
HRESULT hr = ObtainUserAgentString(0, szDefaultAgent, &dwSize);
// 追加自定义信息,修改。
CStringA strDefaultAgent(szDefaultAgent);
strDefaultAgent += " MyBrowser/1.0";
hr = UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, strDefaultAgent.GetBuffer(), strDefaultAgent.GetLength(), 0);
strDefaultAgent.ReleaseBuffer();
char szDefaultAgent[1024];
DWORD dwSize = 1024;
HRESULT hr = ObtainUserAgentString(0, szDefaultAgent, &dwSize);
// 追加自定义信息,修改。
CStringA strDefaultAgent(szDefaultAgent);
strDefaultAgent += " MyBrowser/1.0";
hr = UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, strDefaultAgent.GetBuffer(), strDefaultAgent.GetLength(), 0);
strDefaultAgent.ReleaseBuffer();
全部回答
- 1楼网友:夜余生
- 2021-03-03 09:32
最近在研究android自带的chrome lite浏览器,想修改下它的useragent,跟踪了下android2.2的源代码,发现主要要修改如下几个地方:
1.platform/packages/apps/browser/src/com/android/browser/browsersettings.java
2.platform/packages/apps/browser/res/values/strings.xml
在strings.xml中找到这一段:
view plaincopy to clipboardprint?
- android
- desktop
- iphone
- 0
- 1
- 2
这一段中pref_development_ua_choices对应的是browser的debug模式下选择useragent时选项的名字,pref_development_ua_values对应的是不同的useragent,一会我会讲到这些数字分别对应的是什么useragent。
在browsersettings.java中找到这两段:
view plaincopy to clipboardprint?
private static final string desktop_useragent = "mozilla/5.0 (macintosh; " +
"u; intel mac os x 10_5_7; en-us) applewebkit/530.17 (khtml, " +
"like gecko) version/4.0 safari/530.17";
private static final string iphone_useragent = "mozilla/5.0 (iphone; u; " +
"cpu iphone os 3_0 like mac os x; en-us) applewebkit/528.18 " +
"(khtml, like gecko) version/4.0 mobile/7a341 safari/528.16";
view plaincopy to clipboardprint?
public void update(observable o, object arg) {
browsersettings b = (browsersettings)o;
websettings s = msettings;
s.setlayoutalgorithm(b.layoutalgorithm);
if (b.useragent == 0) {
// use the default ua string
s.setuseragentstring(null);
} else if (b.useragent == 1) {
s.setuseragentstring(desktop_useragent);
} else if (b.useragent == 2) {
s.setuseragentstring(iphone_useragent);
}
由此我们可以看出第一段java代码是不同的useragent字符串,从第二段代码中我们可以看出strings.xml中那个整数的数组和不同useragent的对应关系,0对应默认的useragent,即android chrome lite自己的useragent,1对应的是mac os的useragent,2对应的是iphone os的useragent。
有了上述信息,添加一个自己的useragent就完成了
- 2楼网友:摆渡翁
- 2021-03-03 08:18
点击 工具<br><br>→360安全浏览器选项→其他→杂项→统一IE和360安全浏览器的User-agent 打勾,并重启浏览器 <br><br>360浏览器就进行了一个自动更新,自动将用户的360浏览器的该选项设置为勾选状态,强行让360使用IE的User Agent,大家可以进行测试,在选项中将“统一IE和360安全浏览器的User Agent标示(重启后生效)”的勾选去掉,重启浏览器之后,该功能又会自动勾选。<br>对于用户浏览器User Agent的查看,大家可以在地址栏直接输入 javascript:alert(navigator.userAgent); 回车即可看,可在任何浏览器任<br><br>何网页上看,可以看出目前360浏览器已经默认使用IE做为其User Agent
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯