2019独角兽企业重金招聘Python工程师标准>>>

user_agent是Http协议中的一部分属于头域的组成部分。它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计;例如用手机访问谷歌和电脑访问是不一样的,这些是谷歌根据访问者的UA来判断的。UA可以进行伪装。

user_agent在http头中:

/*HTTP请求头:*/

POST/sample.jspHTTP/1.1

Accept:image/gif.image/jpeg,*/*

Accept-Language:zh-cn

Connection:Keep-Alive

Host:localhost

User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)

Accept-Encoding:gzip,deflate

username=jinqiao&password=1234

/*END*/

user_agent的获取:

PHP:

$_SERVER['HTTP_USER_AGENT']

JS:

navigator.userAgent

服务器端判断:

/** * 判断是否是通过手机访问 * @return bool 是否是移动设备 */ public function isMobile() { //判断手机发送的客户端标志 if(isset($_SERVER['HTTP_USER_AGENT'])) { $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']); $clientkeywords = array( 'nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-' ,'philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu', 'android', 'netfront', 'symbian', 'ucweb', 'windowsce', 'palm', 'operamini', 'operamobi', 'opera mobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile' ); // 从HTTP_USER_AGENT中查找手机浏览器的关键字 if(preg_match("/(".implode('|',$clientkeywords).")/i",$userAgent)&&strpos($userAgent,'ipad') === false) { return true; } } return false; }

JS 方法

function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = new Array("Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"); var flag = true; for (var v = 0; v < Agents.length; v++) { if (userAgentInfo.indexOf(Agents[v]) > 0) { flag = false; break; } } return flag; }

转载于:https://my.oschina.net/wait106427/blog/485854

web请求判断客户端类型相关推荐

  1. 第三方浏览器h5 android测试,H5案例分享:使用JS判断客户端、浏览器、操作系统类型...

    使用JS判断客户端.浏览器.操作系统类型 一.JS判断客户端类型 JS判断客户端是否是iOS或者Android手机移动端 通过判断浏览器的userAgent,用正则来判断手机是否是ios和Androi ...

  2. JS判断访问设备(userAgent)加载不同页面 JS判断客户端操作系统类型(platform)

    //平台.设备和操作系统var system ={win : false,mac : false,xll : false};//检测平台var p = navigator.platform;syste ...

  3. 如何判断web使用的数据库类型

    在sql注入之前,先得学会判断web后面是个啥数据库,这样才能对症下毒,更容易实现sql注入. 判断数据库类型,主要是通过各数据库特有的函数,字符串处理,注释等来排除.猜测数据库的类型. 常见的数据库 ...

  4. Web请求响应编码问题详解

    乱码问题一直是困扰开发人员的比较头疼的问题,而发生在 web 请求响应中的乱码问题由于牵扯到比较多的协议框架和技术实现,又显得更加棘手.web 请求中的乱码一般容易出现在两个地方:一是所请求的资源名称 ...

  5. WEB请求过程(http解析,浏览器缓存机制,域名解析,cdn分发)

    WEB请求过程(http解析,浏览器缓存机制,域名解析,cdn分发) 目录 WEB请求过程(http解析,浏览器缓存机制,域名解析,cdn分发) 概述 HTTP解析 HTTP请求头 HTTP响应头 H ...

  6. SpringBoot 文件上传 通过Content-Type和文件头判断文件类型

    SpringBoot 文件上传 通过Content-Type和文件头判断文件类型 一.关于MIME MIME的全称是Multipurpose Internet Mail Extensions,即多用途 ...

  7. web网站判断是手机访问还是pc电脑访问的检测逻辑

    作者: lizongbo  发表于:00:25. 星期三, 一月 26th, 2011  版权声明 :可以任意转载,转载时请务必以超链接形式标明文章 原始出处 和作者信息及本版权声明. http:// ...

  8. web请求流程与http方法剖析(更新版)

    web请求流程与http方法剖析 (因为之前的排版太差了,又用的富文本编辑器,整理效果不好,抽了时间重新整理一下,这信息头也太难记了哈哈,最近要减少新知识摄入量,把总结都整理复习一遍,还是要学扎实点, ...

  9. web请求流程与http方法剖析

    web请求流程与http方法剖析 目录 web请求流程与http方法剖析 http请求与响应 HTTP超文本传输协议 请求消息头(header) http方法,URL,cookie,状态码 HTTP方 ...

最新文章

  1. 10搜索文件内容搜不出_百度搜索广告太多?内容太杂?可能你们缺少这10个神器网站...
  2. 怎么才能转入大数据领域 ,成为一名合格的大数据分析师...
  3. 目标检测常用数据集格式
  4. Dajngo-Xadmin 修改菜单摆放排序
  5. vector元素的读取
  6. pmbok第七版_PMBOK第七版要来了!都有哪些变化?你准备好了么?
  7. ContextMap详解
  8. 如何在有限的时间内编写完整有效的测试用例?
  9. processon画图软件
  10. 校园导航系统课程设计,#校园管理系统
  11. 国庆长假自驾游推荐路线
  12. java获取虎牙直播弹幕消息,虎牙直播弹幕筛选器
  13. win7搜索文件内容
  14. raid卷的作用_raid是什么?为什么要用raid?有好什么好处?
  15. 关于杂质过滤的一点研究
  16. pstack 安装linux_Linux下pstack的实现
  17. 内容推荐Mahout
  18. IBM PC机是一台什么计算机,PC机是什么类型的计算机
  19. 中国移动:移动互联网仍是未来发展立足点
  20. 损失函数-MSE-CEE

热门文章

  1. 造出世界最大芯片的公司,Cerebras Systems到底是怎样的存在?
  2. 未来五年人工智能将实现的五大突破
  3. 3D打印,智能砖,竹子城市……改变未来建筑业的8项技术
  4. 学界 | 进化算法可以不再需要计算集群,开普敦大学的新方法用一块GPU也能刷新MNIST记录
  5. 末日来临,你的编程语言能干嘛? | 每日趣闻
  6. 投资圈中的“错过”之美:被大佬拒绝之后,他们成为了首富
  7. 漫画:什么是 “职场PUA” ?
  8. PS5 发布,揭秘真假难辨的虚拟和现实
  9. 五个为你的设计添加光影效果的简单技巧(转)
  10. JavaScript正则表达式(2)