首页 / 同步方法

同步方法失效专利 发明

技术内容

1、发明领域 本发明涉及用于管理与使用无线应用协议的系统中的用户代理有 关的状态信息的方法。特别地,本发明涉及在独立的方法权利要求的 前序部分中规定的方法。 2、相关领域描述 下面的术语和首字母缩写在整个申请中使用: WAP           无线应用协议 HTTP          超文本传送协议 WML           无线标记语言 Client        发起对服务器的连接请求的设备或软件应用程序 Cookie Proxy  为代表其他用户代理管理cookie和cookie存储的               目的作为用户代理的中间程序 Origin Server 一个服务器,其上存在给定的资源或将要创建,               通常指web服务器或HTTP服务器 Proxy         为代表其他客户端作出请求的目的既作为服务器又               作为客户端的中间程序 User          与用户代理相互作用来浏览、听或否则使用资源的人 User Agent    用户代理是解释WML、WML脚本或其他内容的任何软               件或设备 在万维网中,HTTP状态管理机制在客户端的已知为cookie的文件 中存储状态信息。在RFC2109中定义了这个机制。相同的机制也可以 在WAP协议中使用,因为使用HTTP头来传达所有的状态和状态处理信 息。RFC2109定义了一种装置由此原服务器可以请求状态信息的一个 小的单元,也就是cookie存储在用户代理(agent)中,并且包含在 对原服务器的后续请求中。对原服务器有各种控制可用,当在后续请 求中包含cookie时,当cookie到期以及其他状态管理和传输控制时 使其能够控制。根据RFC2109用户代理负责cookie的管理。 根据在写本发明申请时的WAP HTTP状态管理的草案说明书, cookie代理程序(proxy)可用于代表用户代理存储管理cookie。例 如,在专利申请WO 99/64967中描述有这样的方法。这样的方法的优 点是节省移动通信设备中的存储器容量和处理能力,并且还节省空中 接口的资源。Cookie代理程序是HTTP代理程序或如代表不直接实现 HTTP状态功能的WAP用户管理cookie的WAP网关的代理程序等价物。 Cookie代理程序负责代表用户代理管理和存储cookie,并且修改去往 和来自用户代理的HTTP请求和响应以便实现这一功能。但是,cookie 代理程序概念有一个以前没有解决的问题。根据RFC2109,有些cookie 要绑定到用户代理会话。因此,应该有一种方法用于cookie代理程序 检测何时新的会话被激活并且绑定到以前会话的cookie应该被丢 弃。这意味着用户代理和cookie代理程序必须以某种方式同步。但是, 在写这个发明申请时的说明书草案详细没有说明任何方式来解决这个 问题。 发明概述 本发明的一个目的是实现一种减轻现有技术的问题的方法。通过安 排用户代理向cookie代理程序指示与当前会话相关的cookie已经由 用户代理和/或cookie代理程序接收到来实现这一目的。 根据本发明的方法的特征在于,其在独立的方法权利要求中的特征 部分规定。根据本发明的网元的特征在于,其在面向网元的独立权利 要求中的特征部分规定。根据本发明的移动通信装置的特征在于,其 在面向移动通信装置的独立权利要求中的特征部分规定。根据本发明 用于无线应用协议用户代理的软件程序产品的特征在于,其在面向无 线应用协议用户代理的软件程序产品的独立权利要求中的特征部分规 定。依赖的权利要求还描述了本发明的有利的实施方案。 根据本发明,当用户代理在当前会话期间接收到指示cookie存在 的头信息时,用户代理在如对cookie代理程序的请求的WAP消息的头 信息中指示用户代理当前有带有相关状态信息的会话。这通知cookie 代理程序,其应该继续存储与当前会话相关的cookie。当cookie代 理程序下次接收到没有这样指示的WAP消息时,其可以假设新的会话 已经开始,在这种情况下cookie代理程序可以丢弃绑定到前面会话的 所有cookie,除非特定cookie的某些参数明确地指示它们在此刻不 应该被丢弃。而且,在本发明的有利的实施方案中,cookie代理程序 可以指示用户代理其没有与当前会话相关的cookie。本发明使用户代 理和cookie代理程序能够同步。 有利地,可以利用X-Wap-Proxy-Cookie-header域中的某些值的 一个实现这一指示。这些特定的值可以是例如‘session-has-state’ 和‘cache-has-state’。这些值使得用户代理可能指示其在当前的用 户代理会话期间已经接收了至少一个X-Wap-Proxy-Set-cookie- header,在这种情况下用户代理相信在特定的浏览会话期间有一个或 多个cookie被cookie代理程序处理。如果然后cookie代理程序接收 到具有普通(plain)值‘session’或‘cache’的相同的头,则其 应该丢弃所有与用户代理相关的没有Max-age属性的cookie,也就是 绑定到前面浏览会话的cookie。 有利地,cookie代理程序可以利用特定头域中的特定值给用户代 理提示其没有与当前会话相关的cookie。例如,在本发明的优选实施 方案中,cookie代理程序通过在‘X-Wap-Proxy-Set-Cookie’头域 中呈现值‘error’给出提示。优选地,cookie代理程序在这样的情 况下给用户代理提示,即用户代理指示当前会话有相关的cookie,但 是cookie代理程序无论何种原因都没有任何与该会话相关的 cookie。例如如果cookie代理程序因错误失去了cookie,则会出现 这样的情况。然后用户代理可以通知用户出现了不一致的行为。 附图简述  下面参考说明本发明的各种实施方案的附图1,仅通过例子详细描 述本发明的各种实施方案。 优选实施方案详述 A、根据本发明的第一个方面的实施方案 根据本发明的第一个方面,X-Wap-Proxy-Cookie头用于将来自用 户代理的带有相关cookie的会话的指示传递到cookie代理程序。这 个头在如来自用户代理的请求的WAP消息中发送以便指示cookie代理 程序是否应该存储来自原服务器的cookie。X-Wap-Proxy-Cookie头 还用于将来自用户代理的状态信息发送到Cookie代理程序。 根据本发明的有利的实施方案,X-Wap-Proxy-Cookie头除了前面 知道的值“cache”、“delete”、“none”以及“session”之外, 还有值“cache-has-state”和“session-has-state”。根据本示 例实施方案这些值的意义描述如下。当值是“cache”或“cache- has-state”时,Cookie代理程序缓存cookie并且代表用户代理将其 发送到原服务器。用户代理在其在正在进行的用户代理会话期间接收 到至少一个X-Wap-Proxy-Set-Cookie头的情况下附加cache-has- state代替cache。这个机制使得能够用简单的方法实现用户代理和 Cookie代理程序之间的同步。由于这个信息Cookie代理程序可以, 例如检测来自以前使用时间的基于用户代理的cookie是否应该丢 弃。当值是“delete”时,Cookie代理程序不向原服务器发送任何 cookie或存储任何接收的cookie。也就是,代理程序作为过滤器并且 在所有cookie发送到用户代理之前删除掉。如果头不存在,或者具有 值“none”,则代理程序传递用户代理和原服务器之间的所有的HTTP cookie头而不进行拦截。当值是“ session”或“session-has-state” 时,Cookie代理程序和用户代理功能合并。如果Cookie代理程序接 收到来自原服务器的包含Set-Cookie头的响应,则其根据Set-Cookie 头中的Max-age属性的存在决定cookie存储的位置。这个方法可用于 将基于会话的cookie从长期存在的cookie中分离出来。Session和 session-has-state值之间的区别类似于在上面描述的cache和 cache-has-state值之间的区别。注意会话的状态一定要是用户代理 会话,其在用户代理开始时开始并且当其退出时结束。注意,会话的 状态被绑定到用户代理会话,该用户代理会话在用户代理启动时开始 并且在用户代理退出时结束。状态优选地与特定的源于cookie的会话 无关,但是其简单地表明在特定的用户代理会话期间用户代理是否有 由Cookie代理程序管理的cookie。 根据本发明的有利的实施方案,cookie代理服务器使用X-Wap- Proxy-Set-Cookie头来指示其没有与当前会话相关的任何cookie。 这个头可以由cookie代理程序用于指示在来自原服务器的响应中接 收了一个或多个cookie并且存储在cookie代理程序和/或在相应的请 求中发送了至少一个cookie。根据本发明的当前示例实施方案, Cookie代理程序使用X-Wap-Proxy-Set-Cookie头来向用户代理报告 错误状态。在本示例实施方案中,X-Wap-Proxy-Set-Cookie头可以有 至少这两个值中的一个:“state”或“error”。下面根据本发明的 示例实施方案描述这些值的含义。当值是“state”时,用户代理能够 检测有状态的会话在进行中。Cookie代理程序当接收到来自原服务器 的Set-Cookie头并且选择来管理cookie时将这个头值在一个消息中 发送到用户代理。当Cookie代理程序在相关HTTP请求中加入Cookie 头时也发送这个头。当值是“error”时,Cookie代理程序检测用户 代理和Cookie代理程序之间的状态不匹配。例如如果Cookie代理程 序在特定的用户代理会话期间无论什么原因丢失cookie,则会出现这 样的情况。 B、根据本发明的第二个方面的实施方案 下面,描述特定情况下根据本发明的优选实施方案的cookie代理 程序的功能。 在本发明的优选实施方案中,当Cookie代理程序接收到“X- Wap-Cookie-Proxy:cache”头时,其丢弃掉所有基于当前用户代理 会话的cookie,也就是从原服务器发送的没有Max-Age-attribute的 那些cookie。 在本发明的优选实施方案中,当cookie代理程序接收到来自用户 代理的“X-Wap-Cookie-Proxy:session”或“X-Wap-Cookie-Proxy: session-has-state”头时,cookie代理程序在对原服务器的请求中 包含cookie。如果cookie代理程序接收到来自原服务器的包含Set- cookie头的响应,则其根据Set-Cookie头中Max-Age属性是否存在 决定cookie存储的位置。如果Max-Age属性存在,则cookie代理程 序向用户代理发送cookie而不拦截。否则其由cookie代理程序存储 直到cookie代理程序接收到来自用户代理的后续的“X-Wap- Cookie-Proxy:session”或“X-Wap-Cookie-Proxy:cache”头。 类似于“X-Wap-Cookie-Proxy:cache”头,“X-Wap-Cookie-Proxy: session”头有效地指示用户代理没有绑定到当前用户代理会话的任何 cookie并且因此所有存储的没有Max-Age属性的cookie都必须丢弃 掉。 有利地cookie代理程序在没有接收到来自用户代理的“X-Wap- Proxy-Cookie:cache”、“X-Wap-Proxy-Cookie:cache-has-state”、 “X-Wap-Proxy-Cookie:session”、或者“X-Wap-Proxy-Cookie: session-has-state”头,指示需要cookie管理的情况下,不执行包 括存储或过滤的任何cookie管理。 有利地如果cookie代理程序在来自原服务器的响应中接收到 cookie并且选择管理它或者其在相关的HTTP请求中已经发送了 Cookie头,则其在对客户端的响应中包含“X-Wap-Proxy-Set- Cookie:state”头。优选地,如果在HTTP请求和响应中既不存在Cookie 和Set-Cookie头,或者如果cookie代理程序没有缓存任何cookie 信息,则不发送这个头。有利地,如果用户代理发送与cookie代理程 序记录的状态冲突的状态信息,则Cookie代理程序在响应中包括 “X-Wap-Proxy-Set-Cookie:error”头。也就是,如果用户代理发 送具有“X-Wap-Proxy-Cookie:cache-has-state”或“X-Wap- Proxy-Cookie:session-has-state”头,但是cookie代理程序没有 为这个特定用户代理存储的任何cookie。 C、根据本发明的第三个方面的实施方案 下面,描述根据特定情况下本发明的优选实施方案的用户代理的功 能。 根据本发明的有利的实施方案,用户代理包括WAP消息中的WAP 特定HTTP状态管理头,如利用cookie代理程序功能的请求。优选地, 用户代理包括用于使用户能够选择使用cookie代理程序功能或者其 自身的本地cookie管理或者两者的装置。 根据本发明的有利实施方案,在用户代理在进行的用户代理会话期 间接收到至少一个X-Wap-Proxy-Set-Cookie头的情况下,用户代理 发送“X-Wap-Cookie-Proxy:cache-has-state”头代替“X-Wap- Cookie-Proxy:cache”头并且相对地发送“X-Wap-Cookie-Proxy: session-has-state”头代替“X-Wap-Cookie-Proxy:session”头。 优选地,用户代理包括用于作为接收来自cookie代理程序的“X- Wap-Proxy-Set-Cookie:error”头的响应而通知用户出现不一致的 服务行为的装置。 D、根据本发明的其他方面的实施方案 下面,描述本发明的某些方面。 根据本发明的另一方面,提供了一种用于在采用无线应用协议的蜂 窝电信系统中由cookie代理程序控制cookie处理的方法。根据本发 明的有利的实施方案,该方法包括至少由用户代理向cookie代理程序 指示用户代理和/或cookie代理程序已经接收到与当前会话相关的 cookie的步骤。 根据本发明的另一个方面,提供了采用无线应用协议的蜂窝电信系 统的网元。图1显示了这个方面。根据本发明的有利的实施方案,网 元200包括至少用于控制cookie存储的装置210,所述用于控制的装 置至少由用户代理向cookie代理程序指示用户代理和/或cookie代理 程序已经接收到与当前会话相关的cookie的指示部分地可控。图1还 说明移动通信装置10、蜂窝电信网20、蜂窝电信网20的基站10、以 及包含原服务器40的第二个网30。第二个网30可以是如互联网的公 共数据网,或者例如利用内部网中的服务器40为提供商的客户提供 WAP业务蜂窝业务提供商的内部网。 根据本发明的另一个方面,提供了用于采用无线应用协议的蜂窝电 信系统的移动通信装置。根据本发明的有利的实施方案,移动通信装 置包括至少用于向cookie代理程序指示移动通信装置和/或cookie代 理程序已经接收到与当前会话相关的cookie的装置110。 根据本发明的另一个方面,提供了用于无线应用协议用户代理的软 件程序产品。根据本发明的有利的实施方案,用于无线应用协议用户 代理的软件程序产品包括至少用于向cookie代理程序指示用户代理 和/或cookie代理程序已经接收到与当前会话相关的cookie的计算机 程序代码装置。 根据本发明的另一个方面,提供了用于无线应用协议用户代理的 cookie代理程序的软件程序产品。根据本发明的有利的实施方案,用 于无线应用协议用户代理的cookie代理程序的软件程序产品包括至 少用于控制cookie存储的计算机程序代码装置,所述用于控制的装置 至少由用户代理向cookie代理程序指示用户代理和/或cookie代理程 序已经接收到与当前会话相关的cookie的指示部分地可控。 E、进一步考虑 发明的方法使得WAP HTTP状态管理能够无缝地实现RFC2109的语 义。 考虑到前面的描述对于本领域的技术人员很显然在本发明的范围 内可以进行各种修改。虽然已经详细地描述了本发明的优选实施方 案,应该很明显许多修改和变体是可能的,所有这些都落在本发明的 真正精神和范围内。 发明背景

相关技术
J·拉蒂发明人的其他相关专利技术