`
天梯梦
  • 浏览: 13790092 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

firefox伪造请求头信息,模拟手机访问网站

 
阅读更多

大概有两年没有去过chinaz的论坛了,昨天上去逛了逛。正好看到一个朋友在问百度是如何判断是不是手机登录的。有几个热心朋友回答的是js,我把百度首页的js看了下,没有找到一丝的手持设备判断的信息,我也就回答了两句,这里的判断应该属于程序部分的处理,不属于前端的范畴,是靠判断请求头信息(HTTP_USER_AGENT)进行判断的。不知道这位朋友能不能明白。

 

为了验证这个结论,这里我用firefox伪造请求头信息(主要是HTTP_USER_AGENT部分),来进行模拟手机访问百度网站。具体操作流程看下面。


如何用firefox伪造user agent来模拟手机访问网站

  1. 首先需要安装三个Firefox插件:wmlbrowser、XHTML Mobile Profile、User Agent Switcher;(我称它们为“伪娘三贱客”)

    先来一睹“伪娘三贱客”的尊容

  2. 安装好后需要设置 User Agent Switcher ,点击菜单 工具 → Default User Agent → User Agent Switcher → Options → New→New User Agent... ,Description是你给它的一个称呼,比如小三,凹凸曼等等。关键的部分是User Agent里面的东西(这里是请求头主要的信息,程序会根据这个请求头进行判断你是否是手持设备),这里就需要把我们想要模拟的手持设备的信息填入了。
    user agent
    user agent
    user agent
  3. 添加好后一路确定,回到浏览器界面。工具 →default user agent  →选择你自己添加的那个 →在浏览器地址输入你想要访问的地址即可。
    十分大方这里你会看到几个选项,Default User Agent (浏览器默认的信息),Internet Explorer (可以模拟ie6,7,8的头信息),Search Robots (模拟谷歌,雅虎,msn的蜘蛛),iphone 3.0 (默认存在的一个),图片中的小三是我自己添加的一个(伪造Android的头信息)
  4. 下面列出几个比较常见手机的User Agent:(如果想要查询更多的手机user agent 信息的话,去看这里还有这里)
    iPhone3:
    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
    Android:
    Mozilla/5.0 (Linux; U; Android 2.2; en-us; Nexus One Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
    诺基亚N95:
    Mozilla/5.0 (SymbianOS/9.2; U; Series60/3.1 NokiaN95/30.0.015; Profile MIDP-2.0 Configuration/CLDC-1.1) AppleWebKit/413 (KHTML, like Gecko) Safari/413
    诺基亚N97:
    Mozilla/5.0 (SymbianOS/9.4; Series60/5.0 NokiaN97-1/20.0.019; Profile/MIDP-2.1 Configuration/CLDC-1.1) AppleWebKit/525 (KHTML, like Gecko) BrowserNG/7.1.18124

firefox伪造头信息,访问网站的效果

ok,当上面的几步你都熟悉了的话,就可以输入你想要造访的网站了。下面看我用我的“小三”拜访百度首页的情况(小三伪造的安卓的头)

伪造安卓手持设备的头信息

Now,看到了吧。百度首页变了吧。而且智能的判断出了这个采用安卓系统访问!你可以换成iphone试试,框中的部分是不同的!


这里你也许会发现用浏览器访问的百度页面好大啊,其实这里是它页面css的问题,为了实现自适应屏幕宽度。如果想要得到好的浏览效果的话,可以参考如何在电脑上模拟手机登陆网站(Opera Mobile Emulator)


查看firefox发送的头信息,进一步验证我的结论

我们用firebug查看一下请求头信息User-Agent的内容,发现就是我修改的安卓的user agent。而百度首页返回了不同的页面,ok结论成立。百度是通过服务端进行手持设备的判断,不过怎样判断的,代码是什么,这里我就不甚了了了。

firebug监测的请求头信息中的user_agent部分

 

转载请注明:牛魔王的世界观 » firefox伪造请求头信息,模拟手机访问网站

 

分享到:
评论

相关推荐

    QQ注册页面测试用例.zip

    - **浏览器**:涵盖Chrome、Firefox、Safari、Edge等主流浏览器。 - **设备分辨率**:验证不同屏幕尺寸和分辨率下的布局和功能。 **4. 安全性测试** - **数据加密**:确保用户输入的敏感信息(如密码、邮箱、手机号...

    website-testing

    3. 兼容性测试:确保网站在不同的浏览器(如Chrome、Firefox、Safari、Edge)和操作系统(Windows、MacOS、Android、iOS)上正常运行。此外,也需考虑移动设备和桌面环境的差异。 4. 可访问性测试:检查网站是否...

    website_test

    3. 兼容性测试:验证网站在不同浏览器(如Chrome、Firefox、Safari、Edge等)、操作系统(Windows、MacOS、Android、iOS)以及设备(桌面、平板、手机)上的表现一致性。 4. 安全测试:检测潜在的安全漏洞,如SQL...

    sites:测试

    3. **兼容性测试**:测试网站在不同浏览器(如Chrome、Firefox、Safari、Edge等)、操作系统(Windows、Mac、Android、iOS等)以及设备(桌面、手机、平板等)上的表现,确保用户体验一致。 4. **安全性测试**:...

    完美兼容各大浏览器获取HTTP_REFERER方法总结

    在网页开发中,HTTP_REFERER头信息是一个非常重要的字段,它标识了用户是从哪个页面跳转到当前页面的。...这些方法已经在IE、Firefox、Safari和Chrome等主流浏览器上经过测试,可以提供良好的兼容性。

    WebApp测试

    3. **兼容性测试**:确认WebApp在不同浏览器(如Chrome、Firefox、Safari、Edge等)和操作系统(Windows、MacOS、iOS、Android等)上的表现。由于HTML的跨平台特性,测试人员需确保WebApp在各种环境下都能正常显示和...

    webteknologia

    2. 浏览器开发者工具:Chrome DevTools、Firefox Developer Tools,用于调试HTML、CSS和JavaScript代码,检查元素属性,模拟不同设备等。 3. 版本控制系统:Git,用于代码版本管理和协作。 4. 构建工具:Webpack、...

    WEBtest

    3. **兼容性测试**:由于不同的浏览器(如Chrome、Firefox、Safari、Edge等)和操作系统(Windows、MacOS、iOS、Android等)可能对HTML解析存在差异,因此需要测试网页在各种环境下的表现。 4. **性能测试**:评估...

Global site tag (gtag.js) - Google Analytics