CN104426868A - 请求的处理方法和处理装置 - Google Patents

请求的处理方法和处理装置 Download PDF

Info

Publication number
CN104426868A
CN104426868A CN201310382727.6A CN201310382727A CN104426868A CN 104426868 A CN104426868 A CN 104426868A CN 201310382727 A CN201310382727 A CN 201310382727A CN 104426868 A CN104426868 A CN 104426868A
Authority
CN
China
Prior art keywords
data record
data type
identifying information
client
running environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201310382727.6A
Other languages
English (en)
Inventor
林洁文
蔡晓鹏
胡戊
祝雄锋
刘洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201310382727.6A priority Critical patent/CN104426868A/zh
Publication of CN104426868A publication Critical patent/CN104426868A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种请求的处理方法和处理装置。其中,该方法包括:获取客户端发送的用于请求数据的消息以及客户端的运行环境识别信息;查找满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录;将查找到的数据记录发送给客户端;其中,运行环境识别信息至少包括:用于表示客户端所在的操作平台的类型的平台识别信息,和/或,用于表示操作平台的版本的版本识别信息。本发明解决了由于客户端与其所在的运行环境不匹配导致客户端请求的数据无法被运行环境识别造成的客户端无法正常工作的技术问题,达到了向客户端返回其运行环境可支持的数据记录的技术效果。

Description

请求的处理方法和处理装置
技术领域
本发明涉及互联网通信领域,具体而言,涉及一种请求的处理方法和处理装置。
背景技术
在现有的移动互联项目中,一款应用产品通常被设计应用于不同的操作平台,且其使用周期通常要跨越操作平台的多个不同的版本,因此与应用产品对应的客户端的设计通常要面临多平台、多版本的兼容问题,其中较为突出的问题之一是在客户端与其运行的操作平台或者操作平台当前的版本不相匹配时,可能发生的客户端所请求的数据无法被操作平台所识别或支持的问题。
对于这一的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种请求的处理方法和处理装置,以至少解决由于客户端与其所在的运行环境不匹配导致客户端请求的数据无法被运行环境识别造成的客户端无法正常工作的技术问题。
根据本发明实施例的一个方面,提供了一种请求的处理方法,包括:获取客户端发送的用于请求数据的消息以及上述客户端的运行环境识别信息;查找满足上述消息中携带的请求条件、且属于上述运行环境识别信息对应的可支持的数据类型的数据记录;将查找到的上述数据记录发送给上述客户端;其中,上述运行环境识别信息至少包括:用于表示上述客户端所在的操作平台的类型的平台识别信息,和/或,用于表示上述操作平台的版本的版本识别信息。
根据本发明实施例的另一方面,还提供了一种请求的处理装置,包括:获取单元,用于获取客户端发送的用于请求数据的消息以及上述客户端的运行环境识别信息;查询单元,用于查找满足上述消息中携带的请求条件、且属于上述运行环境识别信息对应的可支持的数据类型的数据记录;发送单元,用于将查找到的上述数据记录发送给上述客户端;其中,上述运行环境识别信息至少包括:用于表示上述客户端所在的操作平台的类型的平台识别信息,和/或,用于表示上述操作平台的版本的版本识别信息。
在本发明实施例中,利用运行环境识别信息对客户端所在的运行环境的标识作用,采用查找并向客户端返回数据类型与运行环境识别信息对应的数据记录的方式,达到了向客户端返回被客户端所在的运行环境所支持的数据的技术效果,进而解决了由于客户端与其所在的运行环境不匹配导致客户端请求的数据无法被运行环境识别造成的客户端无法正常工作的技术问题。
此外,在本发明实施例中,由于处理操作在客户端以外完成,从而在满足向客户端返回能够被客户端的运行环境支持的数据的前提下,避免了在客户端作出针对不同的运行环境的逻辑分离设计,从而降低了客户端的设计及客户端本身的复杂程度,并进一步地达到了提高客户端的可靠性的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的请求的处理方法的示意图;
图2是根据本发明实施例的另一种可选的请求的处理方法的示意图;
图3是根据本发明实施例的一种可选的请求的处理方法的实施环境的示意图;
图4是根据本发明实施例的又一种可选的请求的处理方法的示意图;
图5是根据本发明实施例的又一种可选的请求的处理方法的示意图;
图6是根据本发明实施例的另一种可选的请求的处理方法的实施环境的示意图;
图7是根据本发明实施例的又一种可选的请求的处理方法的实施环境的示意图;
图8是根据本发明实施例的一种可选的请求的处理装置的示意图;
图9是根据本发明实施例的另一种可选的请求的处理装置的示意图;
图10是根据本发明实施例的又一种可选的请求的处理装置的示意图;
图11是根据本发明实施例的又一种可选的请求的处理装置的示意图;
图12是根据本发明实施例的又一种可选的请求的处理装置的示意图;
图13是根据本发明实施例的又一种可选的请求的处理装置的示意图;
图14是根据本发明实施例的又一种可选的请求的处理装置的示意图;
图15是根据本发明实施例的又一种可选的请求的处理装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种请求的处理方法,如图1所示,该方法可以包括:
S102:获取客户端发送的用于请求数据的消息以及客户端的运行环境识别信息;
S104:查找满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录;
S106:将查找到的数据记录发送给客户端。
应当明确的是,本发明所要解决的问题之一是提供一种方法,对客户端发出的请求进行处理,并实现对该请求的成功回应,其中,该请求可以为超文本传输协议http(Hypertext Transfer Protocol)请求,也可以为文件传输协议ftp(File Transfer Protocol)请求,或者为符合其他可行的文本传输格式的请求等,本发明对此不作限定。更具体地,该请求可以体现为一个消息,例如,对于http请求而言,其所对应的消息可以由请求行、消息头和消息体组成。当然,这只是一种实例,本发明对此不作任何限定,例如,对于请求行中所声明的请求方法为GET方法时,上述消息中也可以不存在上述消息体,而是将查询参数设置在同处于请求行中的统一资源定位符URL(UniformResource Locator)中。
根据本发明实施例提供的请求的处理方法,在步骤S102中,可以获取客户端发送的用于请求数据的消息,其中,一般而言,该客户端可以表示在安装于终端设备的操作平台上运行的软件产品,然而本发明对此不做限定。
区别于现有技术,根据本发明实施例提供的请求的处理方法,在步骤S102中,还可以进一步获取发送请求数据的消息的上述客户端的运行环境识别信息,其中,运行环境识别信息可以表示用于标识客户端所处的运行环境的识别信息。例如,在本发明实施例中,运行环境识别信息可以至少包括:用于表示客户端所在的操作平台的类型的平台识别信息,和/或,用于表示操作平台的版本的版本识别信息。
一般而言,操作平台即可以表示客户端的运行环境,更具体地,操作平台可以进一步指代例如Android、IOS或Windows等不同类型的客户端所植入的操作系统,从而通过步骤S102中获取的上述平台识别信息可以用于识别上述操作系统的类型,例如,该平台识别信息可以直接表现为与操作系统的类型同名的字符串:“android”、“ios”、“windows”,然而在本发明的一些实施例中,平台识别信息也可以设置为与不同类型的操作系统对应的编号,例如“1”、“2”、“3”可以分别用于表示Android、IOS和Windows操作系统。
值得注意的是,以上描述作为示例提出,并不意味着对本发明构成任何不必要的限定,例如,操作系统的类型可以不仅限于上述的三种,还可以包括诸如Unix、Linux、Mac等多种类型,此外,也可以采用其他的分类方式,例如也可以将操作系统的类型划分为嵌入式与非嵌入式等,在另一方面,操作平台也可以不局限于操作系统本身,例如其也可以表示操作系统的一部分或者操作系统及其所在的规模更大的软硬件平台,等。
此外,从以上描述还可以看出,操作平台的类型可以与安装有该操作平台并用于运行上述客户端的终端的类型以及终端设备的具体型号、规格等无关,例如,IOS操作系统既可以安装在个人电脑上,也可以安装在智能手机上。需要说明的是,在本发明实施例中,对于发送请求数据的消息的客户端以及客户端所处的运行环境而言,二者所在的终端可以为移动终端,比如智能手机,也可以为非移动终端,比如个人电脑,还可以为其他类型的非传统终端,比如近些年推出平板电脑等终端设备,本发明对此不作任何限定。
在另一方面,在上述平台识别信息外,运行环境识别信息还可以包括用于表示客户端所在的操作平台的版本的版本识别信息,例如,对于Android系统而言,当前为用户所广泛应用的版本可以包括4.0至4.3版以及5.0版,从而各版本对应的版本识别信息可以分别为与版本号同名的字符串:“4.0”、“4.1”、“4.2”、“4.3”、“5.0”。当然,这只是一种示例,本发明对此不作限定,例如版本识别信息也可以为预设的与不同版本对应的编号,等。
需要说明的是,在本发明的一些实施例中,运行环境识别信息可以为包括上述平台识别信息和版本识别信息在内的一系列识别信息的集合,然而,在本发明的另一些实施例中,运行环境识别信息也可以仅包括平台识别信息或者版本识别信息,从而可以分别用于面向不同操作平台上运行的客户端的请求的处理,以及面向一个操作平台的不同版本上运行的客户端的请求的处理。
此外,应当理解的是,用于识别上述客户端的运行环境的运行环境识别信息也可以包括平台识别信息和版本识别信息以外的其他用作运行环境的识别的信息,一般而言,若具有某一特征的运行环境所支持的数据的类型与不具有这一特征的运行环境所支持的数据的类型不同,则可以将用于标识该特征的识别信息加入到上述运行环境识别信息中,以便于后续进行的对客户端的运行环境所支持的数据的识别。
一般而言,通过以上方式定义的平台识别信息和版本识别信息的内容,通常是和客户端所在的运行环境相对应的,其中,可选地,可以在客户端或者客户端所在的终端对上述运行环境进行检测,并将检测得到的用于标识该运行环境的信息作为运行环境识别信息发送到与客户端建立有连接关系的上述处理设备,从而可以在步骤S104中根据该运行环境识别信息来查找出可以被上述运行环境所识别并支持的请求所需的数据记录。
在以上描述的基础上,根据本发明实施例提供的请求的处理方法,在步骤S104中,可以进一步查找满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录。
如前所述的,用于请求数据的消息中可以包括多个组成部分,其中,为达到定位或筛选请求所需的数据的目的,在该消息中可以携带有请求条件,例如用于提供所需数据的访问路径的URL,或者是预设的查询条件,等,本发明对此不作限定。在现有的请求的处理方法中,作为对请求的回应,处理设备可以直接执行获取满足请求条件的数据的操作,并将获取的数据返回给发送请求的客户端。
区别于现有技术,在本发明实施例中,处理设备通过步骤S104查找到的数据在满足上述请求条件之外,其数据类型还应属于与在步骤S102中获取的运行环境识别信息对应的数据类型,也即步骤S104中所述的可支持的数据类型。
特别需要说明的是,本发明实施例中所称的数据类型,例如步骤S104中所述的数据记录的数据类型,并非仅适用于“数据类型”这一计算机术语的狭义的定义,换而言之,本发明实施例中的数据类型不应理解为仅限于表示根据数据所占用的计算机的存储空间而作出的分类,例如整数型、浮点型、字符串或无类型等类型,而应当理解为“数据类型”的广义的定义,也即定义了一种数据的集合和/或定义在数据的集合上的一个或一组操作,在另一方面,也可以理解为通过数据类型形成对数据记录的标识作用。
下面将结合一个具体的示例对上述数据类型进行更为直观的描述。例如,对于一款网上提醒工具所提供的定时提醒服务而言,可以根据所提供的服务的种类的不同,对与网上提醒工具这一业务相关的数据记录进行分类,例如,可以根据该业务中提供的事件备忘提醒、手机闹钟提醒和好友生日提醒三种服务对数据进行分类,从而某一数据记录的数据类型可以属于以下三者之一:事件备忘提醒、手机闹钟提醒和好友生日提醒。
当然,这只是一种示例,并不意味着对本发明进行了限定。例如,在本发明的一些实施例中,也可以不按客户端所执行的服务或业务的种类来划分出多种数据类型,而是根据其他可行的划分标准进行分类,例如,与运行环境识别信息对应地,该划分标准也可以参照客户端所在的操作平台的处理逻辑来选定。
在另一方面,还值得注意的是,对于一项数据记录,作为其属性的数据类型可以不仅包括根据一种分类所赋予的数据类型,也即一项数据记录可以具有多种并存的数据类型,其中,这些数据类型可以相互独立,也可以存在一定的依存关系,例如,对于一项数据记录所具有的数据类型A和B而言,二者即可以不存在任何关联,比如数据类型A可以为“事件备忘提醒”,数据类型B可以为“QQ平台”,其中,“QQ平台”这一类型可以属于根据网上提醒工具所植入的客户端平台所划分出的类别,而在本发明的另一些实施例中,二者也可以相互关联,例如,数据类型B可以为在数据类型A之下进行分类的子类型,比如数据类型A可以为“事件备忘提醒”,数据类型B可以为“事件备忘提醒”的子类型“购物备忘提醒”。
在以上描述的基础上,在本发明实施例中,可以将与运行环境识别信息对应的数据类型作为可支持的数据类型,其中,由于运行环境识别信息通常可以设置为与运行环境对应的识别信息,从而,属于上述可支持的数据类型的数据记录也可以被与运行环境识别信息对应的运行环境所识别和支持。
进而,根据本发明实施例提供的请求的处理方法,在步骤S106中,可以将查找到的数据记录返回给客户端。其中,对于步骤S106中的查找到的数据记录的具体的发送方式,本发明不作任何限定。
在本发明实施例中,由于通过步骤S104查找到的、并在步骤S106中返回给客户端的数据记录的数据类型与运行环境识别信息对应,也即该数据记录的数据类型属于可支持的数据类型,结合在步骤S102中获取的运行环境识别信息对客户端所在的运行环境的标识作用,从而可以视为该数据记录能够被客户端当前的运行环境所识别和支持,也即,采用本发明实施例提供的请求的处理方法,达到了向客户端返回能够被客户端所在的运行环境所支持的数据的技术效果,进而解决了由于客户端与其所在的运行环境不匹配导致客户端请求的数据无法被运行环境识别造成的客户端无法正常工作的问题。
此外,容易注意到,在本发明实施例中,上述步骤S102、S104和S106均可以在客户端以外完成,从而,对于客户端而言,其并不需要添加额外的处理模块,例如,当客户端被下载到其他操作平台上运行时,或客户端所在的操作平台推出新的版本时,并不需要针对其他操作平台或操作平台的其他版本向客户端中添加额外的处理逻辑,从而在满足向客户端返回能够被客户端的运行环境支持的数据的前提下,避免了针对不同的运行环境的逻辑分离设计,从而显著地降低了客户端的设计及客户端本身的复杂程度,进而由于复杂程度的降低,可以进一步达到提高客户端的可靠性的技术效果。
当然,在本发明的一些实施例中,由于操作失误或者系统错误,可能会出现预设的运行环境识别信息与运行环境不匹配的情形,或者预存的属于与运行环境识别信息对应的数据类型的数据记录与运行环境识别信息对应的运行环境不匹配的情形,等。然而应当理解,上述对本发明的不当的实施方式并不会造成对本发明的任何不必要的限定。
下面将结合图2至图7,并通过本发明的一些实施例,对步骤S104中所述的对符合上述条件的数据记录的查找过程进行更为详细的描述。
可选地,如图2所示,在本发明实施例中,步骤S104可以包括:
S202:在预存的配置文件中获取与运行环境识别信息对应的可支持的数据类型,其中,配置文件中预先记录了运行环境识别信息与可支持的数据类型之间的映射关系;
S204:查找满足消息中携带的请求条件、且属于可支持的数据类型的数据记录。
在本发明实施例中,可以通过配置文件来记录如步骤S104中所述的运行环境识别信息与可支持的数据类型之间的映射关系。例如,更具体地,该配置文件所记录的映射关系可以如表1所示,其中,表1为用于表示与Android操作系统的多个版本对应的版本识别信息与可支持的数据类型之间的映射关系。
表1
在表1中,第1列为数据类型,第2至4列为与数据类型之一对应的版本识别信息,例如,与数据类型“事件备忘提醒”对应的版本识别信息可以为如表1第1行第2至4列所示的“1.0.1”和“1.0.2”,其中,可选地,该版本识别信息可以分别用于表示Android操作系统的对应版本,从而通过该配置文件可以反映出可以被Android操作系统的各版本所支持的数据类型,例如,通过表1体现出的映射关系也可以描述为:可以被Android1.0版本支持的数据类型仅有“手机闹钟提醒”,可以被Android1.0.1版本支持的数据类型包括“手机闹钟提醒”和“事件备忘提醒”,而Android1.0.2版本可以支持全部的上述三种数据类型。
在上述场景下,在步骤S202中,可以从上述配置文件中获取与通过步骤S102获取的版本识别信息对应的可支持的数据类型。例如,若在步骤S102中获取的版本识别信息为“1.0.1”,从而可以从表1中获知与该版本识别信息对应的数据类型为“事件备忘提醒”和“手机闹钟提醒”。
当然,以上只是一种示例,并不意味着对本发明构成了限定。例如,配置文件中记录的映射关系也可以用于表示平台识别信息、由平台识别信息和版本识别信息组成的运行环境识别信息、或者包括其他识别信息在内的运行环境识别信息与可支持的数据类型之间的对应关系。此外,配置文件中记录的映射关系也可以不具体表现为映射表,例如,也可以通过以下语句来实现:
其中,标识符<datatype>与</datatype>之间的语句所定义的变量Type1、Type2和Type3可以表示不同的数据类型,其中,用于标识数据类型的标识项“1_0”、“2_0”和“3_0”中的下划线之前的数字“1”、“2”和“3”可以分别表示上述的数据类型:“事件备忘提醒”、“手机闹钟提醒”和“好友生日提醒”,而下划线之后的数字可以表示为数据记录预留的作为数据记录的属性之一的子类型或其他数据类型。
标识符<ver>与</ver>之间的语句所定义的变量IV1、IV2、IV3、AV1、AV2和AV3可以表示不同的运行环境识别信息,其中,每一变量所表示的运行环境识别信息可以包括平台识别信息和版本识别信息,例如,IV1、IV2、IV3可以分别表示版本识别信息“1.0.0”、“1.1.0”和“1.1.2”与平台识别信息“ios”的组合,而AV1、AV2、AV3可以分别表示版本识别信息“1.0”、“1.0.1”和“1.0.2”与平台识别信息“android”的组合。
在以上语句描述的基础上,标识符<rule>与</rule>之间的语句所定义的对应规则即可以用来表示运行环境识别信息与可支持的数据类型之间的映射关系,其中,通过以下语句所表示的映射关系与表1所表示的映射关系事实上是一致的:
也即,对于平台识别信息“android”而言,Type1所表示的“事件备忘提醒”的数据类型与AV2和AV3所分别表示的版本识别信息“1.0.1”和“1.0.2”对应,Type2所表示的“手机闹钟提醒”的数据类型与AV1、AV2和AV3所分别表示的版本识别信息“1.0”、“1.0.1”和“1.0.2”对应,Type3所表示的“好友生日提醒”的数据类型与AV3所表示的版本识别信息“1.0.2”对应。而根据平台识别信息“ios”下的记录可知,上述三种数据类型对于任一版本识别信息而言,均属于可支持的数据类型。
在上述场景下,平台识别信息“ios”和“android”可以用于分别表示IOS操作系统和Andoid操作系统,而在操作系统下定义的版本识别信息可以用于分别表示该操作系统的多个版本,从而通过上配置文件即可以反映出可以被由操作系统及其版本所形成的客户端当前的运行环境所支持的数据类型。
在以上描述的基础上,在步骤S204中,可以进一步查找满足消息中携带的请求条件、且属于在步骤S202中从配置文件中获得的可支持的数据类型的数据记录,其中,由于步骤S202中的可支持的数据类型的获取操作是以步骤S102中获取的运行环境识别信息为基础的,因此该可支持的数据类型是与运行环境识别信息对应的,从而可以将通过步骤S204查找到的数据记录作为如步骤S104中所述的满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录。
具体地,步骤S204中的查询操作也可以通过多种方式来实现,例如,作为其中一种可选的实施方式,步骤S204可以包括:
步骤(A):在预先建立的数据库中查找满足请求条件和附加条件的数据记录,其中,附加条件为数据记录的数据类型属于可支持的数据类型。
在本发明实施例中,可以将通过步骤S202获得的与运行环境识别信息对应的可支持的数据类型作为一个附加的条件,与客户端所发送的请求数据的消息中的请求条件一并构成处理设备对于本次请求进行的回应中所执行的读操作的查询条件。更具体地,上述附加的查询条件可以表现为请求数据的方法之一所规定的查询参数,也可以为可行的用作数据获取的条件的其他表现形式,本发明对此不作限定。
在上述场景下,在步骤(A)中可以进一步根据包括请求条件和附加条件在内的查询条件,对预先建立的数据库执行满足该查询条件的查找操作,其中,该数据库可以用于存储与客户端所执行的业务相关的数据记录。
更具体地,在步骤(A)中,附加条件可以进一步设置为查找具有一个或多个标识项的数据记录,其中,该标识项为数据库中的数据记录所有,可以用于标识该数据记录的数据类型。从而,作为一种可选的实施方式,步骤(A)可以包括:
步骤(B):在数据库中查找满足请求条件、且具有的标识项所标识的数据类型属于可支持的数据类型的数据记录。
其中,上述标识项可以为数据记录的一个属性,例如其可以具体表现为添加在数据记录中的一个字段,该字段的内容可以为如前所述的类型变量的内容“1_0”、“2_0”或“3_0”等,然而这并不意味着本发明需要对此作出限定,例如,上述标识项也可以设置在数据记录的关键字内。
在上述场景下,基于标识项与其所标识的数据类型的预设的对应关系,在步骤(B)中,通过对上述标识项的识别,可以判断出具有该标识项的数据记录的数据类型是否属于上述可支持的数据类型。例如对于前述示例,对于具有“1_0”的标识项的数据记录,可以判断出该数据记录所属的数据类型为“事件备忘提醒”,若这一数据类型属于与运行环境识别信息对应的可支持的数据类型,则该数据记录满足查询条件,从而在步骤(B)中该数据记录将被查找出来。
通过以上描述,如图3所示,可以将根据本发明实施例的请求的处理方法的处理逻辑归纳如下:
1)从客户端获取运行环境识别信息;
2)根据获取的运行环境识别信息在配置文件中获取与该运行环境识别信息对应的可支持数据类型和/或其标识项,作为附加条件;
3)根据客户端发送的请求数据的消息中的请求条件,以及获取的附加条件,在数据库中查找对应的数据记录;
4)将查找到的数据记录返回给客户端。
容易注意到,上述处理操作均可以在客户端以外完成,从而在满足向客户端返回能够被客户端的运行环境支持的数据的前提下,避免了在客户端上作出针对不同的运行环境的逻辑分离设计,从而显著地降低了客户端的设计及客户端本身的复杂程度,进而由于复杂程度的降低,可以进一步达到提高客户端的可靠性的技术效果。
此外,上述处理逻辑对于客户端而言是非选择性的,或者说是通用的,从而可以通过一个实施有上述请求的处理方法的处理设备,例如图3中的服务器,来处理与之连接的多个客户端发送的请求,从而达到了主从式架构的设计要求,进而可以达到降低包括上述客户端与上述服务器在内的系统的复杂程度的目的,并显著地提升该系统的处理效率。
在另一方面,在本发明实施例中,由于采用配置文件来记录运行环境识别信息与数据类型之间的映射关系,而非直接将这种映射关系通过硬编码植入处理逻辑中来进行数据匹配,从而在系统中的客户端或运行环境出现变化导致映射关系需要改写或扩充时,仅通过对配置文件的简单编辑即可以完成对系统运行的更新,而无需对硬编码进行费时费力改写和排查,从而达到了提高对作为上述请求的处理方法的实施环境的系统进行维护的效率的技术效果。
当然,通过以上方式实现的步骤S204中所述的查找过程只是实现方式的一种,在本发明实施例中,还提供了如下所示的另一种可选的实施方式。其中,可选地,如图4所示,步骤S204可以包括以下步骤:
S602:在预先建立的数据库中查找满足请求条件的初筛数据记录;
S604:从满足请求条件的初筛数据记录中查找数据类型属于可支持的数据类型的数据记录。
在本发明实施例中,可以将对如步骤S104中所述的满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录进行的筛查分为前后两个步骤S602和S604来作处理。
其中,在获取客户端发送的请求数据的消息后,在步骤S602中,可以采用现有技术中存在的处理方法对所需数据进行获取,本发明对于这一获取过程不作任何限定。其中,为便于表述,将获取到的所需数据记为初筛数据记录。
进而,区别于现有技术中将获取的数据直接返回给客户端的处理方式,在本发明实施例中,通过步骤S604,可以对初筛数据记录进行进一步地筛查,以从中查找出数据类型属于可支持的数据类型的数据记录,其中,该可支持的数据类型可以表示通过步骤S202从配置文件中获取的与运行环境识别信息对应的可支持的数据记录。
在本发明实施例中,步骤S604中所述的查找操作也存在多种可行的实施方式,本发明在此不作过多累述,仅提供其中一种可选的实施方式,其中,如图5所示,步骤S604可以包括:
S702:判断初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的类型是否属于可支持的数据类型,
若属于,则执行步骤S704;
S704:将初筛数据记录中待查找的数据记录作为属于可支持的数据类型的数据记录。
其中,类似于在前述实施例中描述过的,数据库中的数据记录可以具有标识该数据记录的类型的标识项,从而可以通过对该标识项的识别得出待查找的数据记录的数据类型,进而可以将该数据类型与上述可支持的数据类型进行比较,若属于可支持的数据类型,则可以视为该数据记录通过筛查,将其作为步骤S104中所述的查找到的数据记录,进而可以在步骤S106中将这些数据记录返回给客户端。
通过以上描述,如图6所示,可以将根据本发明实施例的请求的处理方法的处理逻辑归纳如下:
1)根据客户端发送的请求数据的消息获取初筛数据记录;
2)从客户端获取运行环境识别信息;
3)根据获取的运行环境识别信息在配置文件中获取与该运行环境识别信息对应的可支持数据类型和/或其标识项,作为过滤条件;
4)根据过滤条件对初筛数据记录进行过滤;
5)将过滤得到的数据记录返回给客户端。
在上述场景下,上述配置文件、数据库、以及用于执行过滤操作的过滤器可以独立于客户端之外,从而在满足向客户端返回能够被客户端的运行环境支持的数据的前提下,避免了在客户端上作出针对不同的运行环境的逻辑分离设计,从而显著地降低了客户端的设计及客户端本身的复杂程度,进而由于复杂程度的降低,可以进一步达到提高客户端的可靠性的技术效果。在本发明实施例中,图6中的配置文件、数据库和过滤器也可以位于分布式的计算系统内,本发明对此不作限定。
进一步地,如图7所示,上述处理逻辑中所涉及的配置文件、数据库、以及执行过滤操作的过滤器均可以位于同一服务器上,从而可以达到与如图3所示的处理逻辑所能达到的类似的技术效果,本发明在此不作赘述。
当然,上述请求的处理方法还可以与其他可行的处理方式相结合,例如,可选地,在通过步骤S702得出判断结果之后,上述请求的处理方法还可以还包括:
步骤(C):若不属于,则根据运行环境识别信息,将初筛数据记录中待查找的数据记录转换为数据类型为可支持的数据类型的数据记录,并将转换后的数据记录发送给客户端。
此外,与采用配置文件来记录运行环境识别信息与数据类型之间的映射关系所能达到的技术效果对应,作为本发明的一种可选的实施方式,上述请求的处理方法还可以包括:
步骤(D):根据接收到的更新消息对配置文件进行更新,其中,更新后的配置文件中记录有更新消息中携带的更新后的运行环境识别信息与可支持的数据类型之间的映射关系,和/或,客户端的运行环境识别信息与更新消息中携带的更新后的可支持的数据类型之间的映射关系,和/或,更新消息中携带的更新后的运行环境识别信息与更新消息中携带的更新后的可支持的数据类型之间的映射关系。
在本发明实施例中,可以通过步骤(D)对配置文件进行更新,其中,更新后的配置文件可以记录有更新后的运行环境识别信息与可支持的数据类型之间的映射关系,其中,对于更新后的运行环境识别信息以及可支持的数据类型而言,作为可能被更新的配置文件中的条目,二者或二者之一既可以加载在处理设备所接收到的更新消息中,从而实现对于配置文件的自动更新,也可以由处理设备所在系统的管理人员人为地对配置文件进行更新,本发明对此不作限定。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的请求的处理方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述请求的处理方法的处理装置,如图8所示,该装置包括:
1)获取单元1202,用于获取客户端发送的用于请求数据的消息以及客户端的运行环境识别信息;
2)查询单元1204,用于查找满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录;
3)发送单元1206,用于将查找到的数据记录发送给客户端。
应当明确的是,本发明所要解决的问题之一是提供一种装置,对客户端发出的请求进行处理,并实现对该请求的成功回应,其中,该请求可以为http请求,也可以为ftp请求,或者为符合其他可行的文本传输格式的请求等,本发明对此不作限定。更具体地,该请求可以体现为一个消息,例如,对于http请求而言,其所对应的消息可以由请求行、消息头和消息体组成。当然,这只是一种实例,本发明对此不作任何限定,例如,对于请求行中所声明的请求装置为GET装置时,上述消息中也可以不存在上述消息体,而是将查询参数设置在同处于请求行中的URL中。
根据本发明实施例提供的请求的处理装置,在获取单元1202中,可以获取客户端发送的用于请求数据的消息,其中,一般而言,该客户端可以表示在安装于终端设备的操作平台上运行的软件产品,然而本发明对此不做限定。
区别于现有技术,根据本发明实施例提供的请求的处理装置,在获取单元1202中,还可以进一步获取发送请求数据的消息的上述客户端的运行环境识别信息,其中,运行环境识别信息可以表示用于标识客户端所处的运行环境的识别信息。例如,在本发明实施例中,运行环境识别信息可以至少包括:用于表示客户端所在的操作平台的类型的平台识别信息,和/或,用于表示操作平台的版本的版本识别信息。
一般而言,操作平台即可以表示客户端的运行环境,更具体地,操作平台可以进一步指代例如Android、IOS或Windows等不同类型的客户端所植入的操作系统,从而通过获取单元1202中获取的上述平台识别信息可以用于识别上述操作系统的类型,例如,该平台识别信息可以直接表现为与操作系统的类型同名的字符串:“android”、“ios”、“windows”,然而在本发明的一些实施例中,平台识别信息也可以设置为与不同类型的操作系统对应的编号,例如“1”、“2”、“3”可以分别用于表示Android、IOS和Windows操作系统。
值得注意的是,以上描述作为示例提出,并不意味着对本发明构成任何不必要的限定,例如,操作系统的类型可以不仅限于上述的三种,还可以包括诸如Unix、Linux、Mac等多种类型,此外,也可以采用其他的分类方式,例如也可以将操作系统的类型划分为嵌入式与非嵌入式等,在另一方面,操作平台也可以不局限于操作系统本身,例如其也可以表示操作系统的一部分或者操作系统及其所在的规模更大的软硬件平台,等。
此外,从以上描述还可以看出,操作平台的类型可以与安装有该操作平台并用于运行上述客户端的终端的类型以及终端设备的具体型号、规格等无关,例如,IOS操作系统既可以安装在个人电脑上,也可以安装在智能手机上。需要说明的是,在本发明实施例中,对于发送请求数据的消息的客户端以及客户端所处的运行环境而言,二者所在的终端可以为移动终端,比如智能手机,也可以为非移动终端,比如个人电脑,还可以为其他类型的非传统终端,比如近些年推出平板电脑等终端设备,本发明对此不作任何限定。
在另一方面,在上述平台识别信息外,运行环境识别信息还可以包括用于表示客户端所在的操作平台的版本的版本识别信息,例如,对于Android系统而言,当前为用户所广泛应用的版本可以包括4.0至4.3版以及5.0版,从而各版本对应的版本识别信息可以分别为与版本号同名的字符串:“4.0”、“4.1”、“4.2”、“4.3”、“5.0”。当然,这只是一种示例,本发明对此不作限定,例如版本识别信息也可以为预设的与不同版本对应的编号,等。
需要说明的是,在本发明的一些实施例中,运行环境识别信息可以为包括上述平台识别信息和版本识别信息在内的一系列识别信息的集合,然而,在本发明的另一些实施例中,运行环境识别信息也可以仅包括平台识别信息或者版本识别信息,从而可以分别用于面向不同操作平台上运行的客户端的请求的处理,以及面向一个操作平台的不同版本上运行的客户端的请求的处理。
此外,应当理解的是,用于识别上述客户端的运行环境的运行环境识别信息也可以包括平台识别信息和版本识别信息以外的其他用作运行环境的识别的信息,一般而言,若具有某一特征的运行环境所支持的数据的类型与不具有这一特征的运行环境所支持的数据的类型不同,则可以将用于标识该特征的识别信息加入到上述运行环境识别信息中,以便于后续进行的对客户端的运行环境所支持的数据的识别。
一般而言,通过以上方式定义的平台识别信息和版本识别信息的内容,通常是和客户端所在的运行环境相对应的,其中,可选地,可以在客户端或者客户端所在的终端对上述运行环境进行检测,并将检测得到的用于标识该运行环境的信息作为运行环境识别信息发送到与客户端建立有连接关系的上述处理设备,从而可以在查询单元1204中根据该运行环境识别信息来查找出可以被上述运行环境所识别并支持的请求所需的数据记录。
在以上描述的基础上,根据本发明实施例提供的请求的处理装置,在查询单元1204中,可以进一步查找满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录。
如前所述的,用于请求数据的消息中可以包括多个组成部分,其中,为达到定位或筛选请求所需的数据的目的,在该消息中可以携带有请求条件,例如用于提供所需数据的访问路径的URL,或者是预设的查询条件,等,本发明对此不作限定。在现有的请求的处理装置中,作为对请求的回应,处理设备可以直接执行获取满足请求条件的数据的操作,并将获取的数据返回给发送请求的客户端。
区别于现有技术,在本发明实施例中,处理设备通过查询单元1204查找到的数据在满足上述请求条件之外,其数据类型还应属于与在获取单元1202中获取的运行环境识别信息对应的数据类型,也即查询单元1204中所述的可支持的数据类型。
特别需要说明的是,本发明实施例中所称的数据类型,例如查询单元1204中所述的数据记录的数据类型,并非仅适用于“数据类型”这一计算机术语的狭义的定义,换而言之,本发明实施例中的数据类型不应理解为仅限于表示根据数据所占用的计算机的存储空间而作出的分类,例如整数型、浮点型、字符串或无类型等类型,而应当理解为“数据类型”的广义的定义,也即定义了一种数据的集合和/或定义在数据的集合上的一个或一组操作,在另一方面,也可以理解为通过数据类型形成对数据记录的标识作用。
下面将结合一个具体的示例对上述数据类型进行更为直观的描述。例如,对于一款网上提醒工具所提供的定时提醒服务而言,可以根据所提供的服务的种类的不同,对与网上提醒工具这一业务相关的数据记录进行分类,例如,可以根据该业务中提供的事件备忘提醒、手机闹钟提醒和好友生日提醒三种服务对数据进行分类,从而某一数据记录的数据类型可以属于以下三者之一:事件备忘提醒、手机闹钟提醒和好友生日提醒。
当然,这只是一种示例,并不意味着对本发明进行了限定。例如,在本发明的一些实施例中,也可以不按客户端所执行的服务或业务的种类来划分出多种数据类型,而是根据其他可行的划分标准进行分类,例如,与运行环境识别信息对应地,该划分标准也可以参照客户端所在的操作平台的处理逻辑来选定。
在另一方面,还值得注意的是,对于一项数据记录,作为其属性的数据类型可以不仅包括根据一种分类所赋予的数据类型,也即一项数据记录可以具有多种并存的数据类型,其中,这些数据类型可以相互独立,也可以存在一定的依存关系,例如,对于一项数据记录所具有的数据类型A和B而言,二者即可以不存在任何关联,比如数据类型A可以为“事件备忘提醒”,数据类型B可以为“QQ平台”,其中,“QQ平台”这一类型可以属于根据网上提醒工具所植入的客户端平台所划分出的类别,而在本发明的另一些实施例中,二者也可以相互关联,例如,数据类型B可以为在数据类型A之下进行分类的子类型,比如数据类型A可以为“事件备忘提醒”,数据类型B可以为“事件备忘提醒”的子类型“购物备忘提醒”。
在以上描述的基础上,在本发明实施例中,可以将与运行环境识别信息对应的数据类型作为可支持的数据类型,其中,由于运行环境识别信息通常可以设置为与运行环境对应的识别信息,从而,属于上述可支持的数据类型的数据记录也可以被与运行环境识别信息对应的运行环境所识别和支持。
进而,根据本发明实施例提供的请求的处理装置,在发送单元1206中,可以将查找到的数据记录返回给客户端。其中,对于发送单元1206中的查找到的数据记录的具体的发送方式,本发明不作任何限定。
在本发明实施例中,由于通过查询单元1204查找到的、并在发送单元1206中返回给客户端的数据记录的数据类型与运行环境识别信息对应,也即该数据记录的数据类型属于可支持的数据类型,结合在获取单元1202中获取的运行环境识别信息对客户端所在的运行环境的标识作用,从而可以视为该数据记录能够被客户端当前的运行环境所识别和支持,也即,采用本发明实施例提供的请求的处理装置,达到了向客户端返回能够被客户端所在的运行环境所支持的数据的技术效果,进而解决了由于客户端与其所在的运行环境不匹配导致客户端请求的数据无法被运行环境识别造成的客户端无法正常工作的问题。
此外,容易注意到,在本发明实施例中,上述获取单元1202、查询单元1204和发送单元1206均可以独立于客户端之外,从而,对于客户端而言,其并不需要添加额外的处理模块,例如,当客户端被下载到其他操作平台上运行时,或客户端所在的操作平台推出新的版本时,并不需要针对其他操作平台或操作平台的其他版本向客户端中添加额外的处理逻辑,从而在满足向客户端返回能够被客户端的运行环境支持的数据的前提下,避免了针对不同的运行环境的逻辑分离设计,从而显著地降低了客户端的设计及客户端本身的复杂程度,进而由于复杂程度的降低,可以进一步达到提高客户端的可靠性的技术效果。
当然,在本发明的一些实施例中,由于操作失误或者系统错误,可能会出现预设的运行环境识别信息与运行环境不匹配的情形,或者预存的属于与运行环境识别信息对应的数据类型的数据记录与运行环境识别信息对应的运行环境不匹配的情形,等。然而应当理解,上述对本发明的不当的实施方式并不会造成对本发明的任何不必要的限定。
下面将结合图9至图15,并通过本发明的一些实施例,对查询单元1204中所述的对符合上述条件的数据记录的查找过程进行更为详细的描述。
可选地,如图9所示,在本发明实施例中,查询单元1204可以包括:
1)获取子单元1302,用于在预存的配置文件中获取与运行环境识别信息对应的可支持的数据类型,其中,配置文件中预先记录了运行环境识别信息与可支持的数据类型之间的映射关系;
2)查询子单元1304,用于查找满足消息中携带的请求条件、且属于可支持的数据类型的数据记录。
在本发明实施例中,可以通过配置文件来记录如查询单元1204中所述的运行环境识别信息与可支持的数据类型之间的映射关系。例如,更具体地,该配置文件所记录的映射关系可以如实施例1中的表1所示,其中,表1为用于表示与Android操作系统的多个版本对应的版本识别信息与可支持的数据类型之间的映射关系。
在表1中,第1列为数据类型,第2至4列为与数据类型之一对应的版本识别信息,例如,与数据类型“事件备忘提醒”对应的版本识别信息可以为如表1第1行第2至4列所示的“1.0.1”和“1.0.2”,其中,可选地,该版本识别信息可以分别用于表示Android操作系统的对应版本,从而通过该配置文件可以反映出可以被Android操作系统的各版本所支持的数据类型,例如,通过表1体现出的映射关系也可以描述为:可以被Android1.0版本支持的数据类型仅有“手机闹钟提醒”,可以被Android1.0.1版本支持的数据类型包括“手机闹钟提醒”和“事件备忘提醒”,而Android1.0.2版本可以支持全部的上述三种数据类型。
在上述场景下,在获取子单元1302中,可以从上述配置文件中获取与通过获取单元1202获取的版本识别信息对应的可支持的数据类型。例如,若在获取单元1202中获取的版本识别信息为“1.0.1”,从而可以从表1中获知与该版本识别信息对应的数据类型为“事件备忘提醒”和“手机闹钟提醒”。
当然,以上只是一种示例,并不意味着对本发明构成了限定。例如,配置文件中记录的映射关系也可以用于表示平台识别信息、由平台识别信息和版本识别信息组成的运行环境识别信息、或者包括其他识别信息在内的运行环境识别信息与可支持的数据类型之间的对应关系。此外,配置文件中记录的映射关系也可以不具体表现为映射表,例如,也可以通过以下语句来实现:
其中,标识符<datatype>与</datatype>之间的语句所定义的变量Type1、Type2和Type3可以表示不同的数据类型,其中,用于标识数据类型的标识项“1_0”、“2_0”和“3_0”中的下划线之前的数字“1”、“2”和“3”可以分别表示上述的数据类型:“事件备忘提醒”、“手机闹钟提醒”和“好友生日提醒”,而下划线之后的数字可以表示为数据记录预留的作为数据记录的属性之一的子类型或其他数据类型。
标识符<ver>与</ver>之间的语句所定义的变量IV1、IV2、IV3、AV1、AV2和AV3可以表示不同的运行环境识别信息,其中,每一变量所表示的运行环境识别信息可以包括平台识别信息和版本识别信息,例如,IV1、IV2、IV3可以分别表示版本识别信息“1.0.0”、“1.1.0”和“1.1.2”与平台识别信息“ios”的组合,而AV1、AV2、AV3可以分别表示版本识别信息“1.0”、“1.0.1”和“1.0.2”与平台识别信息“android”的组合。
在以上语句描述的基础上,标识符<rule>与</rule>之间的语句所定义的对应规则即可以用来表示运行环境识别信息与可支持的数据类型之间的映射关系,其中,通过以下语句所表示的映射关系与表1所表示的映射关系事实上是一致的:
也即,对于平台识别信息“android”而言,Type1所表示的“事件备忘提醒”的数据类型与AV2和AV3所分别表示的版本识别信息“1.0.1”和“1.0.2”对应,Type2所表示的“手机闹钟提醒”的数据类型与AV1、AV2和AV3所分别表示的版本识别信息“1.0”、“1.0.1”和“1.0.2”对应,Type3所表示的“好友生日提醒”的数据类型与AV3所表示的版本识别信息“1.0.2”对应。而根据平台识别信息“ios”下的记录可知,上述三种数据类型对于任一版本识别信息而言,均属于可支持的数据类型。
在上述场景下,平台识别信息“ios”和“android”可以用于分别表示IOS操作系统和Andoid操作系统,而在操作系统下定义的版本识别信息可以用于分别表示该操作系统的多个版本,从而通过上配置文件即可以反映出可以被由操作系统及其版本所形成的客户端当前的运行环境所支持的数据类型。
在以上描述的基础上,在查询子单元1304中,可以进一步查找满足消息中携带的请求条件、且属于在获取子单元1302中从配置文件中获得的可支持的数据类型的数据记录,其中,由于获取子单元1302中的可支持的数据类型的获取操作是以获取单元1202中获取的运行环境识别信息为基础的,因此该可支持的数据类型是与运行环境识别信息对应的,从而可以将通过查询子单元1304查找到的数据记录作为如查询单元1204中所述的满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录。
具体地,查询子单元1304中的查询操作也可以通过多种方式来实现,例如,作为其中一种可选的实施方式,如图10所示,查询子单元1304可以包括:
1)第一查询模块1402,用于在预先建立的数据库中查找满足请求条件和附加条件的数据记录,其中,附加条件为数据记录的数据类型属于可支持的数据类型。
在本发明实施例中,可以将通过获取子单元1302获得的与运行环境识别信息对应的可支持的数据类型作为一个附加的条件,与客户端所发送的请求数据的消息中的请求条件一并构成处理设备对于本次请求进行的回应中所执行的读操作的查询条件。更具体地,上述附加的查询条件可以表现为请求数据的装置之一所规定的查询参数,也可以为可行的用作数据获取的条件的其他表现形式,本发明对此不作限定。
在上述场景下,在第一查询模块1402中可以进一步根据包括请求条件和附加条件在内的查询条件,对预先建立的数据库执行满足该查询条件的查找操作,其中,该数据库可以用于存储与客户端所执行的业务相关的数据记录。
更具体地,在第一查询模块1402中,附加条件可以进一步设置为查找具有一个或多个标识项的数据记录,其中,该标识项为数据库中的数据记录所有,可以用于标识该数据记录的数据类型。从而,如图11所示,作为一种可选的实施方式,第一查询模块1402可以包括:
1)查询子模块1502,用于在数据库中查找满足请求条件、且具有的标识项所标识的数据类型属于可支持的数据类型的数据记录。
其中,上述标识项可以为数据记录的一个属性,例如其可以具体表现为添加在数据记录中的一个字段,该字段的内容可以为如前所述的类型变量的内容“1_0”、“2_0”或“3_0”等,然而这并不意味着本发明需要对此作出限定,例如,上述标识项也可以设置在数据记录的关键字内。
在上述场景下,基于标识项与其所标识的数据类型的预设的对应关系,在查询子模块1502中,通过对上述标识项的识别,可以判断出具有该标识项的数据记录的数据类型是否属于上述可支持的数据类型。例如对于前述示例,对于具有“1_0”的标识项的数据记录,可以判断出该数据记录所属的数据类型为“事件备忘提醒”,若这一数据类型属于与运行环境识别信息对应的可支持的数据类型,则该数据记录满足查询条件,从而在查询子模块1502中该数据记录将被查找出来。
通过以上描述以及图3所示的内容,可以将根据本发明实施例的请求的处理装置的处理逻辑归纳如下:
1)从客户端获取运行环境识别信息;
2)根据获取的运行环境识别信息在配置文件中获取与该运行环境识别信息对应的可支持数据类型和/或其标识项,作为附加条件;
3)根据客户端发送的请求数据的消息中的请求条件,以及获取的附加条件,在数据库中查找对应的数据记录;
4)将查找到的数据记录返回给客户端。
容易注意到,上述处理操作均可以在客户端以外完成,从而在满足向客户端返回能够被客户端的运行环境支持的数据的前提下,避免了在客户端上作出针对不同的运行环境的逻辑分离设计,从而显著地降低了客户端的设计及客户端本身的复杂程度,进而由于复杂程度的降低,可以进一步达到提高客户端的可靠性的技术效果。
此外,上述处理逻辑对于客户端而言是非选择性的,或者说是通用的,从而可以通过一个实施有上述请求的处理装置的处理设备,例如图3中的服务器,来处理与之连接的多个客户端发送的请求,从而达到了主从式架构的设计要求,进而可以达到降低包括上述客户端与上述服务器在内的系统的复杂程度的目的,并显著地提升该系统的处理效率。
在另一方面,在本发明实施例中,由于采用配置文件来记录运行环境识别信息与数据类型之间的映射关系,而非直接将这种映射关系通过硬编码植入处理逻辑中来进行数据匹配,从而在系统中的客户端或运行环境出现变化导致映射关系需要改写或扩充时,仅通过对配置文件的简单编辑即可以完成对系统运行的更新,而无需对硬编码进行费时费力改写和排查,从而达到了提高对作为上述请求的处理装置的实施环境的系统进行维护的效率的技术效果。
当然,通过以上方式实现的查询子单元1304中所述的查找过程只是实现方式的一种,在本发明实施例中,还提供了如下所示的另一种可选的实施方式。其中,可选地,如图12所示,查询子单元1304可以包括以下步骤:
1)第二查询模块1602,用于在预先建立的数据库中查找满足请求条件的初筛数据记录;
2)第三查询模块1604,用于从满足请求条件的初筛数据记录中查找数据类型属于可支持的数据类型的数据记录。
在本发明实施例中,可以将对如查询单元1204中所述的满足消息中携带的请求条件、且属于运行环境识别信息对应的可支持的数据类型的数据记录进行的筛查分为由顺序连接的两个第二查询模块1602和第三查询模块1604来作处理。
其中,在获取客户端发送的请求数据的消息后,在第二查询模块1602中,可以采用现有技术中存在的处理装置对所需数据进行获取,本发明对于这一获取过程不作任何限定。其中,为便于表述,将获取到的所需数据记为初筛数据记录。
进而,区别于现有技术中将获取的数据直接返回给客户端的处理方式,在本发明实施例中,通过第三查询模块1604,可以对初筛数据记录进行进一步地筛查,以从中查找出数据类型属于可支持的数据类型的数据记录,其中,该可支持的数据类型可以表示通过获取子单元1302从配置文件中获取的与运行环境识别信息对应的可支持的数据记录。
在本发明实施例中,第三查询模块1604中所述的查找操作也存在多种可行的实施方式,本发明在此不作过多累述,仅提供其中一种可选的实施方式,其中,如图13所示,第三查询模块1604可以包括:
1)判断子模块1702,用于判断初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的数据类型是否属于可支持的数据类型;
2)第一执行子模块1704,用于在初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的数据类型属于可支持的数据类型时,将初筛数据记录中待查找的数据记录作为属于可支持的数据类型的数据记录。
其中,类似于在前述实施例中描述过的,数据库中的数据记录可以具有标识该数据记录的类型的标识项,从而可以通过对该标识项的识别得出待查找的数据记录的数据类型,进而可以将该数据类型与上述可支持的数据类型进行比较,若属于可支持的数据类型,则可以视为该数据记录通过筛查,将其作为查询单元1204中所述的查找到的数据记录,进而可以在发送单元1206中将这些数据记录返回给客户端。
通过以上描述以及图6所示的内容,可以将根据本发明实施例的请求的处理装置的处理逻辑归纳如下:
1)根据客户端发送的请求数据的消息获取初筛数据记录;
2)从客户端获取运行环境识别信息;
3)根据获取的运行环境识别信息在配置文件中获取与该运行环境识别信息对应的可支持数据类型和/或其标识项,作为过滤条件;
4)根据过滤条件对初筛数据记录进行过滤;
5)将过滤得到的数据记录返回给客户端。
在上述场景下,上述配置文件、数据库、以及用于执行过滤操作的过滤器可以独立于客户端之外,从而在满足向客户端返回能够被客户端的运行环境支持的数据的前提下,避免了在客户端上作出针对不同的运行环境的逻辑分离设计,从而显著地降低了客户端的设计及客户端本身的复杂程度,进而由于复杂程度的降低,可以进一步达到提高客户端的可靠性的技术效果。在本发明实施例中,图6中的配置文件、数据库和过滤器也可以位于分布式的计算系统内,本发明对此不作限定。
进一步地,如图7所示,用于上述处理逻辑中所涉及的配置文件、数据库、以及执行过滤操作的过滤器均可以位于同一服务器上,从而可以达到与如图3所示的处理逻辑所能达到的类似的技术效果,本发明在此不作赘述。
当然,上述请求的处理装置还可以与其他可行的处理方式相结合,例如图14所示,可选地,在通过判断子模块1702得出判断结果之后,上述请求的处理装置还可以还包括:
1)第二执行子模块1802,用于在初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的数据类型不属于可支持的数据类型时,根据运行环境识别信息,将初筛数据记录中待查找的数据记录转换为数据类型为可支持的数据类型的数据记录,并将转换后的数据记录发送给客户端。
此外,与采用配置文件来记录运行环境识别信息与数据类型之间的映射关系所能达到的技术效果对应,如图15所示,作为本发明的一种可选的实施方式,上述请求的处理装置还可以包括:
1)更新单元1902,用于根据接收到的更新消息对配置文件进行更新,其中,更新后的配置文件中记录有更新消息中携带的更新后的运行环境识别信息与可支持的数据类型之间的映射关系,和/或,客户端的运行环境识别信息与更新消息中携带的更新后的可支持的数据类型之间的映射关系,和/或,更新消息中携带的更新后的运行环境识别信息与更新消息中携带的更新后的可支持的数据类型之间的映射关系。
在本发明实施例中,可以通过更新单元1902对配置文件进行更新,其中,更新后的配置文件可以记录有更新后的运行环境识别信息与可支持的数据类型之间的映射关系,其中,对于更新后的运行环境识别信息以及可支持的数据类型而言,作为可能被更新的配置文件中的条目,二者或二者之一既可以加载在处理设备所接收到的更新消息中,从而实现对于配置文件的自动更新,也可以由处理设备所在系统的管理人员人为地对配置文件进行更新,本发明对此不作限定。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (16)

1.一种请求的处理方法,其特征在于,包括:
获取客户端发送的用于请求数据的消息以及所述客户端的运行环境识别信息;
查找满足所述消息中携带的请求条件、且属于所述运行环境识别信息对应的可支持的数据类型的数据记录;
将查找到的所述数据记录发送给所述客户端;其中,
所述运行环境识别信息至少包括:用于表示所述客户端所在的操作平台的类型的平台识别信息,和/或,用于表示所述操作平台的版本的版本识别信息。
2.根据权利要求1所述的方法,其特征在于,所述查找满足所述消息中携带的请求条件、且属于所述运行环境识别信息对应的可支持的数据类型的数据记录包括:
在预存的配置文件中获取与所述运行环境识别信息对应的可支持的数据类型,其中,所述配置文件中预先记录了所述运行环境识别信息与所述可支持的数据类型之间的映射关系;
查找满足所述消息中携带的请求条件、且属于所述可支持的数据类型的数据记录。
3.根据权利要求2所述的方法,其特征在于,所述查找满足所述消息中携带的请求条件、且属于所述可支持的数据类型的数据记录包括:
在预先建立的数据库中查找满足所述请求条件和附加条件的数据记录,其中,所述附加条件为数据记录的数据类型属于所述可支持的数据类型。
4.根据权利要求3所述的方法,其特征在于,所述数据库中的数据记录具有用于标识数据类型的标识项,其中,所述在预先建立的数据库中查找满足所述请求条件、且数据类型属于所述可支持的数据类型的数据记录包括:
在所述数据库中查找满足所述请求条件、且具有的标识项所标识的数据类型属于所述可支持的数据类型的数据记录。
5.根据权利要求2所述的方法,其特征在于,所述查找满足所述消息中携带的请求条件、且属于所述可支持的数据类型的数据记录包括:
在预先建立的数据库中查找满足所述请求条件的初筛数据记录;
从满足所述请求条件的初筛数据记录中查找数据类型属于所述可支持的数据类型的数据记录。
6.根据权利要求5所述的方法,其特征在于,所述数据库中的数据记录具有标识该数据记录的类型的标识项,其中,所述从满足所述请求条件的初筛数据记录中查找数据类型属于所述可支持的数据类型的数据记录包括:
判断所述初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的数据类型是否属于所述可支持的数据类型;
若属于,则将所述初筛数据记录中所述待查找的数据记录作为属于所述可支持的数据类型的数据记录。
7.根据权利要求6中所述的方法,其特征在于,在判断所述初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的类型是否属于所述可支持的数据类型之后,还包括:
若不属于,则根据所述运行环境识别信息,将所述初筛数据记录中所述待查找的数据记录转换为数据类型为所述可支持的数据类型的数据记录,并将转换后的数据记录发送给所述客户端。
8.根据权利要求2中所述的方法,其特征在于,还包括:
根据接收到的更新消息对所述配置文件进行更新,其中,更新后的配置文件中记录有所述更新消息中携带的更新后的运行环境识别信息与所述可支持的数据类型之间的映射关系,和/或,所述客户端的运行环境识别信息与所述更新消息中携带的更新后的可支持的数据类型之间的映射关系,和/或,所述更新消息中携带的更新后的运行环境识别信息与所述更新消息中携带的更新后的可支持的数据类型之间的映射关系。
9.一种请求的处理装置,其特征在于,包括:
获取单元,用于获取客户端发送的用于请求数据的消息以及所述客户端的运行环境识别信息;
查询单元,用于查找满足所述消息中携带的请求条件、且属于所述运行环境识别信息对应的可支持的数据类型的数据记录;
发送单元,用于将查找到的所述数据记录发送给所述客户端;其中,
所述运行环境识别信息至少包括:用于表示所述客户端所在的操作平台的类型的平台识别信息,和/或,用于表示所述操作平台的版本的版本识别信息。
10.根据权利要求9所述的装置,其特征在于,所述查询单元包括:
获取子单元,用于在预存的配置文件中获取与所述运行环境识别信息对应的可支持的数据类型,其中,所述配置文件中预先记录了所述运行环境识别信息与所述可支持的数据类型之间的映射关系;
查询子单元,用于查找满足所述消息中携带的请求条件、且属于所述可支持的数据类型的数据记录。
11.根据权利要求10所述的装置,其特征在于,所述查询子单元包括:
第一查询模块,用于在预先建立的数据库中查找满足所述请求条件和附加条件的数据记录,其中,所述附加条件为数据记录的数据类型属于所述可支持的数据类型。
12.根据权利要求11所述的装置,其特征在于,所述数据库中的数据记录具有用于标识数据类型的标识项,其中,所述查询模块包括:
查询子模块,用于在所述数据库中查找满足所述请求条件、且具有的标识项所标识的数据类型属于所述可支持的数据类型的数据记录。
13.根据权利要求10所述的装置,其特征在于,所述查询子单元包括:
第二查询模块,用于在预先建立的数据库中查找满足所述请求条件的初筛数据记录;
第三查询模块,用于从满足所述请求条件的初筛数据记录中查找数据类型属于所述可支持的数据类型的数据记录。
14.根据权利要求13所述的装置,其特征在于,所述数据库中的数据记录具有标识该数据记录的类型的标识项,其中,所述第三查询模块包括:
判断子模块,用于判断所述初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的数据类型是否属于所述可支持的数据类型;
第一执行子模块,用于在所述初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的数据类型属于所述可支持的数据类型时,将所述初筛数据记录中所述待查找的数据记录作为属于所述可支持的数据类型的数据记录。
15.根据权利要求14中所述的装置,其特征在于,所述第三查询模块还包括:
第二执行子模块,用于在所述初筛数据记录中待查找的数据记录具有的标识项所标识的数据记录的数据类型不属于所述可支持的数据类型时,根据所述运行环境识别信息,将所述初筛数据记录中所述待查找的数据记录转换为数据类型为所述可支持的数据类型的数据记录,并将转换后的数据记录发送给所述客户端。
16.根据权利要求10中所述的装置,其特征在于,还包括:
更新单元,用于根据接收到的更新消息对所述配置文件进行更新,其中,更新后的配置文件中记录有所述更新消息中携带的更新后的运行环境识别信息与所述可支持的数据类型之间的映射关系,和/或,所述客户端的运行环境识别信息与所述更新消息中携带的更新后的可支持的数据类型之间的映射关系,和/或,所述更新消息中携带的更新后的运行环境识别信息与所述更新消息中携带的更新后的可支持的数据类型之间的映射关系。
CN201310382727.6A 2013-08-28 2013-08-28 请求的处理方法和处理装置 Pending CN104426868A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310382727.6A CN104426868A (zh) 2013-08-28 2013-08-28 请求的处理方法和处理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310382727.6A CN104426868A (zh) 2013-08-28 2013-08-28 请求的处理方法和处理装置

Publications (1)

Publication Number Publication Date
CN104426868A true CN104426868A (zh) 2015-03-18

Family

ID=52974822

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310382727.6A Pending CN104426868A (zh) 2013-08-28 2013-08-28 请求的处理方法和处理装置

Country Status (1)

Country Link
CN (1) CN104426868A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105678157A (zh) * 2016-01-11 2016-06-15 迅鳐成都科技有限公司 一种基于应用环境识别的数据产权保护系统和方法
CN107168638A (zh) * 2016-03-07 2017-09-15 阿里巴巴集团控股有限公司 数据处理方法及装置
CN108667710A (zh) * 2017-03-28 2018-10-16 腾讯科技(深圳)有限公司 一种信息处理方法及设备
CN110022260A (zh) * 2019-02-02 2019-07-16 阿里巴巴集团控股有限公司 一种跨环境回执消息处理方法及系统
CN110858142A (zh) * 2018-08-07 2020-03-03 北京优酷科技有限公司 一种应用的启动方法及装置
CN114201701A (zh) * 2022-02-18 2022-03-18 成都鲁易科技有限公司 运行环境的识别方法及装置、存储介质、服务端、客户端
CN115065609A (zh) * 2022-08-17 2022-09-16 深圳美云集网络科技有限责任公司 B端SaaS系统混合部署方法及系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178651A (zh) * 2007-12-21 2008-05-14 深圳市迅雷网络技术有限公司 一种软件版本更新提示的方法、系统及装置
CN101686458A (zh) * 2008-09-28 2010-03-31 华为技术有限公司 一种终端配置和管理方法及终端装置
CN101753524A (zh) * 2008-12-15 2010-06-23 青岛海信传媒网络技术有限公司 一种软件升级方法及系统
CN102348004A (zh) * 2010-08-04 2012-02-08 中国移动通信有限公司 一种业务组件的配置方法、系统及设备
CN102420813A (zh) * 2011-10-27 2012-04-18 北京百度网讯科技有限公司 一种根据用户设备的终端属性提供目标信息的方法与设备
CN102625290A (zh) * 2012-04-10 2012-08-01 青岛海信移动通信技术股份有限公司 一种资源下载的方法、装置和系统及终端
CN103179438A (zh) * 2011-12-20 2013-06-26 中国移动通信集团上海有限公司 视频播放首次接入码率的确定方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178651A (zh) * 2007-12-21 2008-05-14 深圳市迅雷网络技术有限公司 一种软件版本更新提示的方法、系统及装置
CN101686458A (zh) * 2008-09-28 2010-03-31 华为技术有限公司 一种终端配置和管理方法及终端装置
CN101753524A (zh) * 2008-12-15 2010-06-23 青岛海信传媒网络技术有限公司 一种软件升级方法及系统
CN102348004A (zh) * 2010-08-04 2012-02-08 中国移动通信有限公司 一种业务组件的配置方法、系统及设备
CN102420813A (zh) * 2011-10-27 2012-04-18 北京百度网讯科技有限公司 一种根据用户设备的终端属性提供目标信息的方法与设备
CN103179438A (zh) * 2011-12-20 2013-06-26 中国移动通信集团上海有限公司 视频播放首次接入码率的确定方法及装置
CN102625290A (zh) * 2012-04-10 2012-08-01 青岛海信移动通信技术股份有限公司 一种资源下载的方法、装置和系统及终端

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105678157A (zh) * 2016-01-11 2016-06-15 迅鳐成都科技有限公司 一种基于应用环境识别的数据产权保护系统和方法
CN105678157B (zh) * 2016-01-11 2018-09-21 迅鳐成都科技有限公司 一种基于应用环境识别的数据产权保护系统和方法
CN107168638A (zh) * 2016-03-07 2017-09-15 阿里巴巴集团控股有限公司 数据处理方法及装置
CN108667710A (zh) * 2017-03-28 2018-10-16 腾讯科技(深圳)有限公司 一种信息处理方法及设备
CN108667710B (zh) * 2017-03-28 2022-03-11 腾讯科技(深圳)有限公司 一种信息处理方法及设备
CN110858142A (zh) * 2018-08-07 2020-03-03 北京优酷科技有限公司 一种应用的启动方法及装置
CN110858142B (zh) * 2018-08-07 2024-05-24 阿里巴巴(中国)有限公司 一种应用的启动方法及装置
CN110022260A (zh) * 2019-02-02 2019-07-16 阿里巴巴集团控股有限公司 一种跨环境回执消息处理方法及系统
CN110022260B (zh) * 2019-02-02 2021-12-24 创新先进技术有限公司 一种跨环境回执消息处理方法及系统
CN114201701A (zh) * 2022-02-18 2022-03-18 成都鲁易科技有限公司 运行环境的识别方法及装置、存储介质、服务端、客户端
CN114201701B (zh) * 2022-02-18 2022-05-03 成都鲁易科技有限公司 运行环境的识别方法及装置、存储介质、服务端、客户端
CN115065609A (zh) * 2022-08-17 2022-09-16 深圳美云集网络科技有限责任公司 B端SaaS系统混合部署方法及系统

Similar Documents

Publication Publication Date Title
CN104426868A (zh) 请求的处理方法和处理装置
JP5551217B2 (ja) アプリケーションを検索するための端末、システム及び方法
KR102317535B1 (ko) 소프트웨어 개발 키트로 데이터 추적을 구현하는 방법 및 시스템
US10311877B2 (en) Performing tasks and returning audio and visual answers based on voice command
CN101502079B (zh) 在移动网络终端上安装和配置软件应用程序的系统和方法
WO2006078683A3 (en) Automated response to solicited/unsolicited communications and collection and management of data extracted therefrom
US20160162602A1 (en) Methods and apparatus for proximally informed database searches
CN106469044B (zh) 实现页面跳转的方法和装置
CN102904960B (zh) 一种基于rss的信息同步系统及方法
CN107885873B (zh) 用于输出信息的方法和装置
CN109818848B (zh) 会话的展示方法和装置、存储介质、电子装置
CN109492152B (zh) 推送定制内容的方法、装置、计算机设备及存储介质
JP5548897B2 (ja) 携帯端末、情報表示システムおよび情報表示方法
CN102968430A (zh) 用于在地址簿中自动产生和管理组的方法和设备
CN106528688B (zh) 一种针对Twitter的分析取证方法
CN110867188A (zh) 内容服务的提供方法、装置、存储介质及电子装置
CN104965829A (zh) 终端应用分类方法、服务器及系统
CN103426095A (zh) 基于android平台的农资产品溯源查询方法
CN104361040A (zh) 一种定制查询的方法及装置
CN105227736A (zh) 一种预留手机号码的更新方法、装置及系统
JP2006178912A (ja) 情報処理方法及びプログラム
CN106549860B (zh) 信息获取方法和装置
CN113434742A (zh) 账号的筛选方法和装置、存储介质及电子装置
CN110198227A (zh) 日志文件的处理方法、装置、存储介质及电子装置
CN102685220A (zh) 一种基于web页面的数据交互方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20150318

RJ01 Rejection of invention patent application after publication