无线应用协议网关浏览业务cookie的实现方法

文档序号:7958526阅读:235来源:国知局
专利名称:无线应用协议网关浏览业务cookie的实现方法
技术领域
本发明主要适合用于WAP(无线应用协议)网关分布式部署上行浏览业务中COOKIE的实现。
背景技术
因特网的COOKIE技术极其简单,却有着旺盛的生命力。COOKIE开始引起众人的注意是从2000年二月随着网络隐私权的提出开始的,有关的辩论至今仍在继续。从另一方面来说,COOKIE使得浏览网页更容易了。几乎所有的主要的网站设计者都使用了COOKIE,因为他们想为浏览网站的人提供一个更好的浏览环境,同时也能更加准确地收集访客的信息。COOKIE的比较确切的定义应该是这个“COOKIE是Web服务器保存在用户硬盘上的一段文本。COOKIE允许一个Web站点在用户的电脑上保存信息并且随后再取回它。信息的片断以‘名/值’对(name-value pairs)的形式储存。”WAP终端为了能更方便的访问应用服务器,使用了COOKIE技术。一般应用服务器返回两种类型的COOKIE,一种是session COOKIE(会话COOKIE),另一种是permanent COOKIE(永久COOKIE)。对于WAP终端从上网开始到上网结束,认为是一次完整的会话。在会话期间,如果访问同样的URL(简称统一资源定位)或新访问的URL包含保存的COOKIE中的URL,则应该把本次会话前相关的COOKIE信息从缓存中检索出来,发送给应用服务器,如果会话结束了,所有的该会话的COOKIE不再使用。但如果应用服务器返回的COOKIE信息是永久COOKIE,则只要COOKIE不过期,任何时候访问同样的URL或新访问的URL包含保存的COOKIE中的URL都应该把保存的永久COOKIE信息发送给应用服务器。
目前,只有支持COOKIE技术的WAP终端才能享受COOKIE技术带来的便利。

发明内容
本发明要解决的技术问题是提供一种无线应用协议网关浏览业务COOKIE的实现方法,可以使不支持COOKIE的WAP终端也能享受COOKIE技术带来的便利。
为了解决上述技术问题,本发明提供了一种无线应用协议网关浏览业务COOKIE的实现方法,应用于包括无线应用协议WAP终端通过WAP网关访问应用服务器的系统,该方法包括WAP网关收到WAP终端访问请求的处理过程,包括以下步骤(a)WAP网关收到WAP终端访问应用服务器的第一次请求后,获取该终端的所有永久COOKIE并放入缓存;(b)WAP网关收到后续请求时,根据获取的会话唯一标志从其缓存中获取该会话的所有会话COOKIE,然后根据该终端访问的应用服务器域名和路径获取匹配的会话COOKIE,并获取缓存中匹配的永久COOKIE;(c)WAP网关对获取的永久COOKIE和会话COOKIE进行整合,构造带有COOKIE信息的消息发送给该应用服务器;该方法还包括WAP网关收到COOKIE信息的处理过程,包括以下步骤(h)WAP网关收到应用服务器返回的COOKIE信息后,解析所述COOKIE到统一的数据结构中;(i)该WAP网关判断收到的COOKIE是会话COOKIE还是永久COOKIE,再与缓存中相同类型的COOKIE进行匹配,匹配到时更新缓存中的COOKIE,否则添加该COOKIE到缓存中。
进一步地,上述方法还可具有以下特点所述系统中的WAP网关是分布式设置的且有一个与各个WAP网关连接的数据库,所述步骤(a)中,WAP终端请求访问应用服务器后,先判断该请求是否是终端上线后的第一次请求,如果是,WAP网关先根据WAP终端标识,获取数据库中该终端对应的所有永久COOKIE,并与缓存中已有的永久COOKIE进行比较,更新缓存中已有的永久COOKIE或添加新的永久COOKIE到缓存。
进一步地,上述方法还可具有以下特点所述步骤(a)中该WAP网关还根据WAP终端访问的应用服务器的域名以及路径对缓存中该终端的永久COOKIE进行匹配,将匹配到的永久COOKIE的信息发送给应用服务器。
进一步地,上述方法还可具有以下特点所述步骤(i)中,该WAP网关判断所述COOKIE的类型,如果是会话COOKIE,将其与该会话所有时间段内的会话COOKIE根据所述应用服务器的域名和路径进行匹配,如果匹配成功则更新所述COOKIE,否则将其保存入所述WAP网关的缓存;如果所述COOKIE是永久COOKIE,根据所述终端的标识以及所述应用服务器的域名和路径,将其与所述WAP网关缓存中所有的永久COOKIE进行匹配,如果匹配成功,更新缓存中该匹配COOKIE的内容;否则,保存所述永久COOKIE到所述缓存中。
进一步地,上述方法还可具有以下特点所述步骤(c)中,根据所述COOKIE信息是否包含过期信息来判断所述COOKIE的类型。
进一步地,上述方法还可具有以下特点在WAP终端下线时,WAP网关获取会话COOKIE唯一标志,根据该会话唯一标志删除所述WAP网关缓存中该终端所有的会话COOKIE,释放所有的会话COOKIE资源。
进一步地,上述方法还可具有以下特点在WAP终端下线时,WAP网关根据唯一的终端标识从所述WAP网关缓存中匹配到该终端的所有永久COOKIE;过滤掉过期COOKIE后,将所述永久COOKIE保存到数据库中,同时从所述缓存中的永久COOKIE中删除所有与该终端匹配的COOKIE。
进一步地,上述方法还可具有以下特点保存所有永久COOKIE时,要根据统一资源定位名称和路径、终端标识与数据库中的永久COOKIE进行匹配,如果匹配成功,说明该COOKIE信息已经存在旧的版本,则更新数据库中该匹配COOKIE的内容;否则,匹配失败,保存该COOKIE到数据库中。
进一步地,上述方法还可具有以下特点数据库要定期检查并删除过期的COOKIE。
进一步地,上述方法还可具有以下特点所述步骤(b)中,构造带有COOKIE的信息之前,先过滤掉过期的COOKIE。
综上所述,本发明方法通过采用WAP网关,使得不支持COOKIE的WAP终端也能够实现COOKIE功能,为不支持COOKIE的WAP终端提供了更好的网页浏览环境,并且采用数据库与缓存相结合的方式来缓存会话以及永久COOKIE,弥补了硬盘保存方式的一些缺陷。


图1是本发明实施例中WAP网关收到WAP终端访问应用服务器后的处理流程图;图2是本发明实施例中保存应用服务器返回的COOKIE信息的流程图;图3是本发明实施例中在WAP终端下线时删除会话COOKIE的流程图;图4是本发明实施例中在WAP终端下线时保存永久COOKIE的流程图。
具体实施例方式
以下结合附图和实施例对本发明作进一步地说明目前一般COOKIE都是保存在WAP终端的本地硬盘上,在随后访问同样的服务器的时候检索相关的信息发送给应用服务器。这种普通的COOKIE存储对WAP网关来说是不适合的。首先,对于session COOKIE来说,没有必要保存到硬盘上,只需要在缓存中保存相关的session COOKIE就可以,因为对WAP终端来说,根据业务的特征,WAP终端不可能长期一直处于上线状态,而且一旦下线该会话的所有COOKIE都已经没有任何用处,所以用缓存实现能提高COOKIE的处理效率。
其次,在WAP网关中,为了提高WAP终端通过WAP网关访问应用服务器的处理能力,WAP网关是有多台同等业务处理能力的机器组成。这样从WAP终端一次上线到下线过程中的请求是唯一的一台业务处理机进行处理,但对手机不同次的上线到下线过程中的请求不能保证是唯一的一台处理机进行处理,即WAP终端的所有请求是分布在不同的业务处理机上进行处理的,这样会导致应用服务器返回的COOKIE处理是不同机器进行处理的。此时如果通过一般COOKIE信息的处理保存到WAP网关本地硬盘上是不可取的,会导致手机的COOKIE信息保存在多台机器上,这样对WAP终端下次请求时无法准确快速定位对应的COOKIE信息,所以为了达到以上目的,需要把信息保存到一台公用的机器上的数据库中便于不同的业务处理机进行处理。因此,本实施例的系统,包括通过因特网连接的若干WAP终端和若干WAP网关,分别与所述WAP网关连接的数据库和应用服务器,其中,数据库定期检查并删除过期的永久cookie。
WAP终端通过WAP网关访问应用服务器,WAP网关需要对应用服务器返回的COOKIE信息进行处理,便于以后手机再次访问相关的应用服务器时能保留以前访问的一些信息。目前WAP网关对WAP终端访问的应用服务器返回的COOKIE信息是全部进行保存处理的,而对不支持COOKIE的手机,网关是需要进行COOKIE获取操作(对以前保存的COOKIE信息进行过滤),而对本身支持COOKIE的手机网关是不获取以前保存的COOKIE信息。
图1示出了本发明实施例中WAP网关收到WAP终端访问应用服务器后的处理流程,包括以下步骤步骤110,WAP终端请求访问应用服务器;步骤120,WAP网关判断该请求是否是终端上线后的第一次请求,如果是,进行步骤130,否则,进行步骤150;步骤130,WAP网关获取并保存该会话的唯一标志,并根据WAP终端标识查询数据库,获取该终端对应的所有永久COOKIE(包括其它服务器的永久COOKIE)并与缓存中的永久COOKIE比较,更新缓存中已有的永久COOKIE或添加新的永久COOKIE到缓存中;步骤140,WAP网关根据WAP终端访问的应用服务器的域名(即URL名称)以及路径对缓存中该终端的永久COOKIE进行匹配,将匹配到的永久COOKIE的信息发送给应用服务器,结束;步骤150,WAP网关根据该会话的唯一标识、访问的应用服务器的域名和路径对缓存中的会话COOKIE进行匹配,获得匹配的会话COOKIE;同时,WAP网关根据终端标识、访问的应用服务器的域名和路径对缓存中的永久COOKIE进行匹配,获得匹配的永久COOKIE;步骤160,WAP网关过滤掉匹配到的永久COOKIE中过期的永久COOKIE,然后将选出的会话COOKIE和永久COOKIE进行整合,构造带有这些COOKIE的信息的消息发送给应用服务器,结束。
会话COOKIE设计是个2级链表的概念,而永久COOKIE是一级链表的概念,但在匹配时会话COOKIE先是根据会话标志取出所有该会话期内的所有COOKIE(是以链表方式存储的),然后从该子链表中匹配,而永久COOKIE是直接从链表中匹配,这两者在最终匹配到访问某一服务器的COOKIE时匹配原则都是根据URL、路径和终端标志来匹配的。
图2示出了本发明实施例中保存应用服务器返回的COOKIE信息的流程,包括以下步骤步骤210,WAP网关根据应用服务器返回的COOKIE信息,解析到统一的数据结构中,即定义的COOKIE信息的数据结构中;步骤220,根据解析到的内容判断该COOKIE信息是否过期,如果过期则释放该数据结构中的内容,结束;否则,进行步骤230;步骤230,根据上述返回的COOKIE信息是否包含expires(过期)信息,判断该COOKIE的类型,如果是会话COOKIE,进行步骤240,否则,是永久COOKIE,进行步骤250;步骤240,获取会话唯一标志,根据会话唯一标志从WAP网关的缓存中取出该会话所有时间段内的会话COOKIE,根据其访问的应用服务器的域名和路径对上述返回的COOKIE进行匹配,如果匹配成功,表示缓存中已经存在与上述返回的COOKIE相匹配的COOKIE,因此更新缓存中的COOKIE;否则,将上述返回的COOKIE添加到缓存中,结束;
步骤250,则从WAP网关的缓存中取出所有的永久COOKIE,根据WAP终端访问的应用服务器的域名和路径、终端标识与上述返回的COOKIE进行匹配,如果匹配成功,说明该COOKIE信息已经存在旧的版本,则更新缓存该匹配COOKIE的内容;否则,匹配失败,保存上述返回的COOKIE到缓存中,结束。
图3示出了本发明实施例中在WAP终端下线时删除会话COOKIE的流程,包括以下步骤步骤310,在WAP终端下线时,WAP网关获取会话COOKIE唯一标志;步骤320,根据会话唯一标志删除缓存中该终端所有的会话COOKIE,释放所有的会话COOKIE资源。
图4示出了本发明实施例中在WAP终端下线时保存永久COOKIE的流程,包括以下步骤步骤410,在WAP终端下线时,WAP网关根据唯一的终端标识从缓存中匹配到该终端的所有永久COOKIE;步骤420,过滤掉过期COOKIE后,将上述永久COOKIE保存到数据库中,同时从缓存的永久COOKIE中删除所有与该终端匹配的COOKIE。
保存所有永久COOKIE时,要根据URL名称和路径、终端标识与数据库中的永久COOKIE进行匹配,如果匹配成功,说明该COOKIE信息已经存在旧的版本,则更新数据库中该匹配COOKIE的内容;否则,匹配失败,则说明是新COOKIE,保存该COOKIE到数据库中。
权利要求
1.无线应用协议网关浏览业务COOKIE的实现方法,应用于包括无线应用协议WAP终端通过WAP网关访问应用服务器的系统,该方法包括WAP网关收到WAP终端访问请求的处理过程,包括以下步骤(a)WAP网关收到WAP终端访问应用服务器的第一次请求后,获取该终端的所有永久COOKIE并放入缓存;(b)WAP网关收到后续请求时,根据获取的会话唯一标志从其缓存中获取该会话的所有会话COOKIE,然后根据该终端访问的应用服务器域名和路径获取匹配的会话COOKIE,并获取缓存中匹配的永久COOKIE;(c)WAP网关对获取的永久COOKIE和会话COOKIE进行整合,构造带有COOKIE信息的消息发送给该应用服务器;该方法还包括WAP网关收到COOKIE信息的处理过程,包括以下步骤(h)WAP网关收到应用服务器返回的COOKIE信息后,解析所述COOKIE到统一的数据结构中;(i)该WAP网关判断收到的COOKIE是会话COOKIE还是永久COOKIE,再与缓存中相同类型的COOKIE进行匹配,匹配到时更新缓存中的COOKIE,否则添加该COOKIE到缓存中。
2.如权利要求1所述的方法,其特征在于,所述系统中的WAP网关是分布式设置的且有一个与各个WAP网关连接的数据库,所述步骤(a)中,WAP终端请求访问应用服务器后,先判断该请求是否是终端上线后的第一次请求,如果是,WAP网关先根据WAP终端标识,获取数据库中该终端对应的所有永久COOKIE,并与缓存中已有的永久COOKIE进行比较,更新缓存中已有的永久COOKIE或添加新的永久COOKIE到缓存。
3.如权利要求1或2所述的方法,其特征在于,所述步骤(a)中该WAP网关还根据WAP终端访问的应用服务器的域名以及路径对缓存中该终端的永久COOKIE进行匹配,将匹配到的永久COOKIE的信息发送给应用服务器。
4.如权利要求1所述的方法,其特征在于,所述步骤(i)中,该WAP网关判断所述COOKIE的类型,如果是会话COOKIE,将其与该会话所有时间段内的会话COOKIE根据所述应用服务器的域名和路径进行匹配,如果匹配成功则更新所述COOKIE,否则将其保存入所述WAP网关的缓存;如果所述COOKIE是永久COOKIE,根据所述终端的标识以及所述应用服务器的域名和路径,将其与所述WAP网关缓存中所有的永久COOKIE进行匹配,如果匹配成功,更新缓存中该匹配COOKIE的内容;否则,保存所述永久COOKIE到所述缓存中。
5.如权利要求4所述的方法,其特征在于,所述步骤(c)中,根据所述COOKIE信息是否包含过期信息来判断所述COOKIE的类型。
6.如权利要求1所述的方法,其特征在于,在WAP终端下线时,WAP网关获取会话COOKIE唯一标志,根据该会话唯一标志删除所述WAP网关缓存中该终端所有的会话COOKIE,释放所有的会话COOKIE资源。
7.如权利要求1所述的方法,其特征在于,在WAP终端下线时,WAP网关根据唯一的终端标识从所述WAP网关缓存中匹配到该终端的所有永久COOKIE;过滤掉过期COOKIE后,将所述永久COOKIE保存到数据库中,同时从所述缓存中的永久COOKIE中删除所有与该终端匹配的COOKIE。
8.如权利要求7所述的方法,其特征在于,保存所有永久COOKIE时,要根据统一资源定位名称和路径、终端标识与数据库中的永久COOKIE进行匹配,如果匹配成功,说明该COOKIE信息已经存在旧的版本,则更新数据库中该匹配COOKIE的内容;否则,匹配失败,保存该COOKIE到数据库中。
9.如权利要求1所述的方法,其特征在于,数据库要定期检查并删除过期的COOKIE。
10.如权利要求1所述的方法,其特征在于,所述步骤(b)中,构造带有COOKIE的信息之前,先过滤掉过期的COOKIE。
全文摘要
无线应用协议网关浏览业务COOKIE的实现方法,WAP网关收到WAP终端访问应用服务器的第一次请求后,获取该终端的所有永久COOKIE并放入缓存;WAP网关收到后续请求时,根据获取的会话唯一标志从其缓存中获取该会话的所有会话COOKIE,然后根据该应用服务器域名和路径获取匹配的会话COOKIE,并获取缓存中匹配的永久COOKIE;WAP网关整合获取的永久COOKIE和会话COOKIE,构造带有COOKIE信息的消息发送给该应用服务器;WAP网关收到应用服务器返回的COOKIE信息后,解析该COOKIE到统一的数据结构中;该WAP网关判断收到的COOKIE是会话COOKIE还是永久COOKIE,再与缓存中相同类型的COOKIE进行匹配,匹配到时更新缓存中的COOKIE,否则添加该COOKIE到缓存中。
文档编号H04L29/06GK101039317SQ200610065778
公开日2007年9月19日 申请日期2006年3月14日 优先权日2006年3月14日
发明者吴丽梅 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1