`
Franciswmf
  • 浏览: 780868 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

解析客户端请求信息Headers

 
阅读更多
ANDROID客户端请求
{Accept=[application/json], accept-encoding=[gzip,deflate], accept-language=[zh-CN,en-US;q=0.8], connection=[keep-alive], Content-Length=[51], content-type=[application/json;charset=UTF-8], host=[10.254***:8888], origin=[http://www.***.cn], referer=[http://www.***.cn/***/index.html?showAcitivityIcon=0], user-agent=[Mozilla/5.0 (Linux; Android 4.4.2; PE-TL20 Build/Huawei***) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36], x-requested-with=[com.***], x-wap-profile=[http://wap1.huawei.com/uaprof/HUAWEI_***_UAProfile.xml]}

IOS客户端请求
{Accept=[application/json], accept-encoding=[gzip, deflate], accept-language=[zh-Hans-CN;q=1], connection=[close], Content-Length=[68], content-type=[application/json], host=[www.***.cn], user-agent=[***/2.5.0 (iPhone; iOS 10.0.2; Scale/2.00)], x-forwarded-for=[10.254***], x-real-ip=[10.254***]}

解析Headers

	public String getHeaders(HttpServletRequest request,String type){
		String flag="";
		Map<String, String> map=new HashMap<String, String>();
		Enumeration<String> headers=request.getHeaderNames();
		while (headers.hasMoreElements()) {
			String key=(String) headers.nextElement();
			String value=request.getHeader(key);
			map.put(key, value);
			System.out.println("输出key:"+key);
		}
		if(!map.isEmpty()){
			flag=map.get(type);
			if(Utils.isNotBlank(flag)){
				if(flag.toUpperCase().contains(Enum.DEVICE_TYPE_ANDROID.getCode())){
					flag=Enum.DEVICE_TYPE_ANDROID.getCode();
				}else if(flag.toUpperCase().contains(Enum.DEVICE_TYPE_IOS.getCode())){
					flag=Enum.DEVICE_TYPE_IOS.getCode();
				}else{
					flag=Enum.DEVICE_TYPE_UNKNOWN.getCode();
				}
			}
		}
		System.out.println("结果:"+flag);
		return flag;
	}
分享到:
评论

相关推荐

    Android项目源码dota2游戏相关资讯集成客户端带服务端

    一款提供dota2游戏相关资讯,视频,攻略,更新日志的Android App,集资讯阅读,查看攻略,更新日志,视频播放,查看播放记录,视频缓存功能于...爬虫使用BeautifulSoup解析html,服务进程使用Flask框架处理客户端请求。

    apollo-upload-client:Apollo客户端的终止Apollo链接,它允许在查询或变异变量中使用FileList,File,Blob或ReactNativeFile实例并发送GraphQL多部分请求

    建立使用安装: npm install apollo-upload-client 从删除任何uri , credentials或headers选项。 只能有1个发送GraphQL请求的; 如果已经安装了诸如类的 ,请将其删除。 使用使用初始化客户端。 还要确保GraphQL...

    python学习总结day03.txt

    1、关于正则解析 1、分组(想要抓取什么内容就加小括号()) 2、正则方法 p = re.compile('....') r_list = p.findall(html) 结果 :[(),(),(),()] 3、贪婪匹配 : .* 4、非贪婪匹配 :.*? 2、抓取步骤 1、找...

    node-soap:node.js的SOAP客户端和服务器

    我们已禁用了存储库中的问题,现在仅在审查请求请求。 我们禁用问题的原因可以在此处找到。 在哪里可以找到帮助? 可以在gitter上找到社区支持: 如果您正在寻找专业帮助,则可以通过此与维护者联系。 模组 soap....

    python爬虫 模拟登录人人网过程解析

    requests 提供了一个叫做session类,来实现客户端和服务端的会话保持 使用方法 1.实例化一个session对象 2.让session发送get或者post请求 session = requests.session() session.get(url,headers) 下面就用人人网来...

    从源码解析Python的Flask框架中request对象的用法

    from flask import request Flask 是一个人气非常高的Python Web框架,笔者也拿它写过一些大大小小的项目,Flask 有一个特性我非常的喜欢,就是无论在什么地方,如果你想要获取当前的request对象,... args: 请求链

    thin-fun_embed:用于嵌入 eventmachined 应用程序的瘦 web 服务器的修剪

    它故意不是send_status_headers_body机架服务器,但您可以使用send_status_headers_body将机架应用程序的响应返回给客户端。 它能够处理保持活动的请求(但不是流水线式的)。 它比 Thin 本身更快,因为它允许您...

    HttpClient以及获取页面内容应用

    15. 直接获取服务器发送的response code和 headers。 16. 设置连接超时的能力。 17. 实验性的支持http1.1 response caching。 18. 源代码基于Apache License 可免费获取。 1.3版本 org.apache....

    spring security 参考手册中文版

    32.3 CAS客户端的配置 244 32.3.1服务票据认证 244 32.3.2单一注销 246 32.3.3使用CAS认证无状态服务 249 配置CAS以获取代理授予票证 249 使用代理票证调用无状态服务 250 32.3.4代理票证认证 251 33. X.509认证 253...

    Sosoo 1.0网络爬虫程序.doc

    同时对http请求资源的管理,例如cookie管理。 Sosoo主要是通过com.sosoo.robot.http.HttpTool工具类来提供此工能。你也可以自己定制更优化的处理方案替换,同样通过register方法进行注册。由于重载这个工具需要对...

Global site tag (gtag.js) - Google Analytics