一种基于Windows Phone 8平台的引导应用流量的方法技术

技术编号:14338767 阅读:52 留言:0更新日期:2017-01-04 11:35
本发明专利技术提供了一种基于Windows Phone 8平台的引导应用流量的方法,该方法包括:向系统注册HTTP/HTTPS前缀的请求创建模块并配置目标代理服务器的IP地址及端口;构造一个自主实现的支持代理设置的HTTP请求对象;在该HTTP请求对象中设置之前所配置的目标代理服务器的IP地址以及端口;将该HTTP请求对象返回给上层应用程序;解析所述上层应用程序的请求并按对应格式转发给所述目标代理服务器;接收HTTP响应的头部,构造HTTP响应对象返回给所述上层应用程序;从所述目标代理服务器接收所述HTTP响应的内容并转换成响应格式传递给所述上层应用程序。

【技术实现步骤摘要】

本专利技术涉及流量引导技术,尤其涉及WindowsPhone8平台下的非侵入式Http、Https协议的流量引导技术。
技术介绍
目前,内容分发网络(CDN)动态加速技术对于提高移动应用的网络体验具有明显效果。而进行动态加速的基础要能够获得用户访问流量。目前,可采用远程方法引导移动应用访问流量。远程方法是通过CNAME机制,设置访问域名的别名,实现将流量指向自己的服务器。这种方法的优点是客户端无需配置即可使用,但缺点是只能使用通用的传输协议,无法在客户端对数据流进行个性化优化。为了能优化动态内容的访问链路,往往需要将移动应用的流量引导到内容分发网络的服务器上。目前Http与Https协议是移动应用程序最为常用的网络传输协议。而WindowsPhone8平台主要通过WebClient和WebRequest这两个类实现HTTP请求的构造和提交,以及HTTP响应的获取和解析。但是WindowsPhone8平台下,WebClient和WebRequest不支持代理服务器设置的接口,因此无法对系统原生的WebClient和WebRequest类的流量进行引导。另外,利用软件开发库(SDK)进行嵌入的时候,为了最大了限度的方便用户的接入,需要把额外的调用的数量降到最低。因此,亟需一种能在本地实现的引导应用流量的方法。
技术实现思路
为了克服上述缺陷,本申请提供了一种基于WindowsPhone8平台的引导应用流量的方法。所述方法包括以下几个步骤。向系统注册HTTP/HTTPS前缀的请求创建模块并配置目标代理服务器的IP地址及端口;构造一个自主实现的支持代理设置的HTTP请求对象;在该HTTP请求对象中设置之前所配置的目标代理服务器的IP地址以及端口;将该HTTP请求对象返回给上层应用程序;解析所述上层应用程序的请求并按对应格式转发给所述目标代理服务器;接收HTTP响应的头部,构造HTTP响应对象返回给所述上层应用程序;从所述目标代理服务器接收所述HTTP响应的内容并转换成响应格式传递给所述上层应用程序。在一个实施例中,所述解析上层应用程序请求并按对应格式转发给所述目标代理服务器的步骤包括:解析所述上层应用程序请求所对应用户请求中的URL并构造HTTP/HTTPS请求头部;根据URL的前缀类型,创建连接所述目标代理服务器的对应连接类型;如果是HTTP前缀,则创建TCP连接;如果是HTTPS前缀,则调用SSL,完成SSL握手;向所述目标代理服务器发送HTTP/HTTPS请求。在一个实施例中,所述接收所述HTTP响应的头部,构造HTTP响应对象返回给所述上层应用程序的步骤包括:获取所述HTTP响应的头部;在成功接收所述HTTP响应的头部后,创建HTTP响应对象,并根据HTTP响应的头部的各个字段值,设置HTTP响应对象的各属性;将HTTP响应对象返回给所述上层应用程序。在一个实施例中,所述从所述目标代理服务器接收所述HTTP响应的内容并转换成响应格式传递给所述上层应用程序的步骤包括:从所述目标代理服务器处接收所述HTTP响应的内容;检查所述HTTP响应的内容的属性;若所述HTTP响应的内容的属性为压缩属性,则对接收到的所述HTTP响应的内容进行解压缩,然后返回给所述上层应用程序;否则直接将接收到的所述HTTP响应的内容返回给所述上层应用程序。在一个实施例中,所述方法采用软件开发库嵌入到应用程序中实现。在一个实施例中,所述客户端中的代码结构和业务逻辑不做任何改变。本专利技术的优点在于在WindowsPhone8平台下,原客户端中的代码结构和业务逻辑无需做任何改变,只需将流量引导SDK嵌入到应用程序中,并进行初始化配置,便能将使用基于WebClient类进行访问的HTTP/HTTPS流量引导到指定的地址,以便于后续的链路优化和协议优化。而且,本专利技术通过本地方法,则将流量引导到本地的客户端上来,为优化客户端的接入方式提供巨大灵活性,克服了远程方法所带来的缺陷。附图说明本专利技术的以上
技术实现思路
以及下面的具体实施方式在结合附图阅读时会得到更好的理解。需要说明的是,附图仅作为所请求保护的专利技术的示例。在附图中,相同的附图标记代表相同或类似的元素。图1示出根据本专利技术的一实施例的流量引导模块的初始化流程;图2示出根据本专利技术的一实施例的流量引导模块的创建http/https请求的流程图;图3示出根据本专利技术一实施例的创建HTTP请求响应模块的流程图;图4示出根据本专利技术的一实施例的获取响应内容的流程图;以及图5示出根据本专利技术的一实施例的引导应用流量的方法的流程图。具体实施方式以下在具体实施方式中详细叙述本专利技术的详细特征以及优点,其内容足以使任何本领域技术人员了解本专利技术的
技术实现思路
并据以实施,且根据本说明书所揭露的说明书、权利要求及附图,本领域技术人员可轻易地理解本专利技术相关的目的及优点。本专利技术关键点在于通过WindowsPhone8平台下WebClient类的RegisterPrefix注册HttpClientCreater创建器,与实现支持代理设置的HttpRequest,HttpResponse抽象类相结合,实现在不修改原来应用代码的基础上,将所有的WebClient.Create函数返回的系统默认HttpRequest替换成自己开发的,实现HttpRequest抽象类接口标准,且加入代理设置支持的对象,并且在返回之前将代理地址设置成预先配置好的代理服务器的IP地址与端口,实现将WebClient的HTTP/HTTPS流量引导到目标IP地址。本专利技术主要利用WindowsPhone8平台下支持根据不同的URL前缀创建自有类型的HttpClient的特性。一般来说,WindowsPhone8下创建HTTP请求的步骤如下:首先,调用WebRequest.Create方法创建HTTP/HTTPS请求,获取WebRequest对象。其次,调用WebRequest对象的GetResponse方法获取Response对象。再次,调用Response对象的GetResponseStream,并调用其Read方法获取HTTP响应的HttpBody数据。本专利技术以第三方sdk的形式提供流量引导模块。在一个实施例中,流量引导模块位于客户端中。流量引导模块的设计关键点在于在GetResponse内部进行的修改,例如,将连接的地址修改为目标代理服务器的地址。流量引导模块的主要工作在于,按照原有HTTP类的设计逻辑及接口形式,重新实现一套进行HTTP访问的类,包括WebRequest,WebResponse,ResponseStream。通过这些类的相互配合,实现HTTP/HTTPS请求的发送和响应的接收。以下是处理一个HTTP/HTTPS请求的步骤:图1示出根据本专利技术的一实施例的流量引导模块的初始化流程。配置和初始化包括两个步骤。在步骤101中,向操作系统注册HTTP/HTTPS前缀。在一个实施例中,该操作系统可以是WindowsPhone8。在步骤102中,配置代理服务器的IP地址及端口,并保存。在步骤103中,应用原有逻辑而不需要进行任何修改。图2示出根据本专利技术的一实施例的流量引导模块的创建http/https请求的流程图。在本专利技术中,http本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/62/201510316722.html" title="一种基于Windows Phone 8平台的引导应用流量的方法原文来自X技术">基于Windows Phone 8平台的引导应用流量的方法</a>

【技术保护点】
一种基于Windows Phone 8平台的引导应用流量的方法,其特征在于,包括:向系统注册HTTP/HTTPS前缀的请求创建模块并配置目标代理服务器的IP地址及端口;构造一个自主实现的支持代理设置的HTTP请求对象;在该HTTP请求对象中设置之前所配置的目标代理服务器的IP地址以及端口;将该HTTP请求对象返回给上层应用程序;解析所述上层应用程序请求并按对应格式转发给所述目标代理服务器;接收HTTP响应的头部,构造HTTP响应对象返回给所述上层应用程序;从所述目标代理服务器接收所述HTTP响应的内容并转换成响应格式传递给所述上层应用程序。

【技术特征摘要】
1.一种基于WindowsPhone8平台的引导应用流量的方法,其特征在于,包括:向系统注册HTTP/HTTPS前缀的请求创建模块并配置目标代理服务器的IP地址及端口;构造一个自主实现的支持代理设置的HTTP请求对象;在该HTTP请求对象中设置之前所配置的目标代理服务器的IP地址以及端口;将该HTTP请求对象返回给上层应用程序;解析所述上层应用程序请求并按对应格式转发给所述目标代理服务器;接收HTTP响应的头部,构造HTTP响应对象返回给所述上层应用程序;从所述目标代理服务器接收所述HTTP响应的内容并转换成响应格式传递给所述上层应用程序。2.如权利要求1所述的方法,其特征在于,所述解析上层应用程序请求并按对应格式转发给所述目标代理服务器的步骤包括:解析所述上层应用程序所对应用户请求中的URL并构造HTTP/HTTPS请求头部;根据URL的前缀类型,创建连接所述目标代理服务器的对应连接类型;如果是HTTP前缀,则创建TCP连接;如果是HTTPS前缀,则调用SSL,完成SSL握手;向所述目标代理服务器发送...

【专利技术属性】
技术研发人员:洪珂郑才益邹爽
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1