CN112351059B - 请求处理方法和装置、电子设备、计算机可读存储介质 - Google Patents
请求处理方法和装置、电子设备、计算机可读存储介质 Download PDFInfo
- Publication number
- CN112351059B CN112351059B CN202010765080.5A CN202010765080A CN112351059B CN 112351059 B CN112351059 B CN 112351059B CN 202010765080 A CN202010765080 A CN 202010765080A CN 112351059 B CN112351059 B CN 112351059B
- Authority
- CN
- China
- Prior art keywords
- request
- processing
- data
- rule
- preset rule
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供了一种请求处理方法和装置、电子设备、计算机可读存储介质,请求处理方法包括:接收请求;基于预设的配置信息对所述请求进行筛选;当配置信息中存在与请求相匹配的预设规则时,对请求进行与请求相匹配的预设规则对应的处理。
Description
技术领域
本申请实施例涉及互联网技术领域,特别涉及一种请求处理方法和装置、电子设备、计算机可读存储介质。
背景技术
物联网,提供一种关于“物”“物”相联的通用平台(即物联服务平台),具有包括不同设备不同协议的设备接入能力、通讯能力、通用业务能力和存储能力。
物联网,可以连接不同厂商的不同类型的多种设备。当设备接入后,物联服务平台提供通用的服务,如通用的读写能力、通用的上报或设置能力、通用的事件通知能力等等,通常不对设备的请求进行解析和处理,仅做通用的存储和通讯,由相联的“物”“物”对象自行解析。但是在某些场景下,需要对设备的请求进行特殊处理。
发明内容
本申请实施例提供一种请求处理方法和装置、电子设备、计算机可读存储介质。
第一方面,本申请实施例提供一种请求处理方法,包括:接收请求;基于预设的配置信息对请求进行筛选;当配置信息中存在与请求相匹配的预设规则时,对请求进行与请求相匹配的预设规则对应的处理。
第二方面,本申请实施例提供一种电子设备,包括:至少一个处理器;存储器,存储器上存储有至少一个程序,当至少一个程序被至少一个处理器执行,使得至少一个处理器实现上述任意一种请求处理方法。
第三方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任意一种请求处理方法。
本申请实施例提供的请求处理方法,基于预设的配置信息对请求进行筛选,当配置信息中存在与请求相匹配的预设规则时,对请求进行与请求相匹配的预设规则对应的处理,从而实现了对请求的监控,使得对满足特定条件的请求进行相应的处理,即实现了对请求的特殊处理。
附图说明
图1为本申请一个实施例提供的请求处理方法的流程图;
图2为本申请实施例提供的请求处理过程的示意图;
图3为本申请另一个实施例提供的请求处理装置的组成框图。
具体实施方式
为使本领域的技术人员更好地理解本申请的技术方案,下面结合附图对本申请提供的请求处理方法和装置、电子设备、计算机可读存储介质进行详细描述。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本申请透彻和完整,并将使本领域技术人员充分理解本申请的范围。
在不冲突的情况下,本申请各实施例及实施例中的各特征可相互组合。
如本文所使用的,术语“和/或”包括至少一个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本申请。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加至少一个其它特征、整体、步骤、操作、元件、组件和/或其群组。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本申请的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
在某些场景下,需要对设备的请求进行特殊处理。
例如,当某种设备有差异性需求或能力不足,设备商要求物联服务平台对某种数据提供特殊处理时,即当设备有较为特殊的业务场景时,需要物联服务平台对请求中的某种特定数据进行特殊处理(如数据转换、命令转换、产生事件等)。
如,某种设备需要上报定位信息,但其因为是简易型设备,不支持全球定位***(GPS,Global Position System)定位,但能获取无线保真(WiFi,Wireless Fidelity)信息和基站信息,则希望物联服务平台提供将其上报的WiFi信息和/或基站信息转换为经纬度信息,进而可以计算或展示在另外一端;
如,某种设备提出需求,要求设备上报的电量低于某个阈值(如20)时,由物联服务平台通知与其相联的设备,发出低电告警通知。
又如,当设备商有自己的服务器,希望设备在向物联服务平台请求某种服务并携带某种特定关键字数据的时候,物联服务平台能将请求转发至设备商的服务器,以供设备商实现自身的业务处理。
本申请实施例的请求处理方法虽然是基于物联服务平台的需求提出的,但是同样适用于其他任何需要对请求进行特殊处理的场景,不局限于物联网领域,也不局限于服务端领域,对于有同样需求的终端服务(模块,应用等)也同样适用。如,当终端某个应用作为与服务对接的总接入模块时,若接收到不同的请求,需要将请求分发到其他业务模块或应用自身的其他子模块进行处理时,也可以采用本申请实施例的请求处理方法。
图1为本申请一个实施例提供的请求处理方法的流程图。
第一方面,参照图1,本申请一个实施例提供一种请求处理方法,包括:
步骤100、接收请求。
在一些示例性实施例中,请求可以是其他设备本身就会向当前设备(执行主体)发送的请求,也可以是其他设备本身不会向当前设备发送,但是由于某种特殊需求要求其他设备向当前设备发送的请求。例如,对于物联网,当前设备可以是物联服务器,其他设备可以是物联网中的任何一个设备。
在一些示例性实施例中,请求中可以包括数据。在另一些示例性实施例中,请求中也可以不包括数据。
在一些示例性实施例中,请求中包括的数据可以是任意格式的数据。例如可以用是JS对象简谱(JSON,JavaScript Object Notation)格式的数据。JSON是一种轻量级的数据交换格式,包含对象(JSONObject)和数组(JSONArray)两种表示结构。
JSONObject以“{”左大括号开始,以“}”右大括号结束,中间部分由一个或一个以上以“,”分隔的“关键字(key),值(value)”对构成,key和value之间以“:”分隔,key是字符串,value可以是字符串、数值、true、false、null、对象或数组等。例如,某一个JSONObject表示如下:
{
key1:value1,
key2:value2,
……
}
JSONArray以“[”左中括号开始,以“]”右中括号结束,中间包括一个或一个以上JSONObject。例如,某一个JSONArray表示如下:
[
{
key1:value1,
key2:value2
}
{
Key3:value3,
Key4:value4
}
]
在一些示例性实施例中,接收到请求实际上就是对接收到的请求进行监控,也就是每一个请求都进行后续的规则匹配。
步骤101、基于预设的配置信息对请求进行筛选。
在一些示例性实施例中,配置信息包括预设规则。
在另一些示例性实施例中,配置信息包括:预设规则与目标信息之间的对应关系。
在一些示例性实施例中,目标信息和预设规则之间的对应关系可以是一对一的关系。在另一些示例性实施例中,目标信息和预设规则之间的对应关系也可以是一对多的关系。在另一些示例性实施例中,目标信息和预设规则之间的对应关系也可以是多对一的关系。在另一些示例性实施例中,目标信息和预设规则之间的对应关系也可以是多对多的关系。
需要说明的是,可以设置所有的对应关系都是一对一的关系、一对多的关系、多对一的关系、或多对多的关系;也可以设置一部分对应关系为一对一的关系,另一部分对应关系为一对多的关系;也可以设置一部分对应关系为一对一的关系,另一部分对应关系为多对一的关系;等等,本申请实施例对此不作限定。
如图2所示,在一些示例性实施例中,预设规则可以包括:数据规则。在另一些示例性实施例中,预设规则也可以包括:请求规则。在另一些示例性实施例中,预设规则也可以包括:数据规则和请求规则。
也就是说,可以只设置数据规则,也可以只设置请求规则,也可以设置数据规则和请求规则。
需要说明的是,在对应关系中,可以设置所有的对应关系中的预设规则只包括数据规则;也可以设置所有的对应关系中的预设规则只包括请求规则;也可以设置所有的对应关系中的预设规则包括数据规则和请求规则;也可以设置一部分对应关系中的预设规则只包括数据规则,另一部分对应关系中的预设规则只包括请求规则;也可以设置一部分对应关系中的预设规则只包括数据规则,另一部分对应关系中的预设规则包括数据规则和请求规则;也可以设置一部分对应关系中的预设规则只包括请求规则,另一部分对应关系中的预设规则包括数据规则和请求规则;也可以设置一部分对应关系中的预设规则只包括数据规则,另一部分对应关系中的预设规则只包括请求规则,还有另一部分对应关系中的预设规则包括数据规则和请求规则;本申请实施例对此不作限定。
在一些示例性实施例中,数据规则包括以下至少之一:数据关键字、数据的正则表达式。
在一些示例性实施例中,当数据为JSON格式的数据时,数据关键字可以是JSON格式的数据关键字。当数据为其他格式的数据时,数据关键字也可以是其他格式的数据关键字。本申请实施例对数据的具体格式不作限定。
在一些示例性实施例中,JSON格式的数据关键字可以包括带路径的关键字,或不带路径的关键字。例如,带路径的关键字为device/location/wifi,device/battery等。
在一些示例性实施例中,目标信息至少包括可以识别一个处理的足够信息,即目标信息与对应的处理为一一对应关系,具体实现可以由实现者自由定义。例如,目标信息包括以下任意一个:与目标信息对应的处理的识别参数、处理模块的识别参数;其中,处理模块用于实现与目标信息对应的处理。
在一些示例性实施例中,识别参数包括以下任意一个:
识别符、名称、地址、身份信息。
在一些示例性实施例中,处理模块包括以下任意一个:
插件、组件、服务器、实例对象、接口。
在一些示例性实施例中,基于预设的配置信息对请求进行筛选是指,判断配置信息中是否存在与请求相匹配的预设规则。
需要说明的是,一个对应关系中,若数据规则和请求规则只设置了一个,那么对请求进行筛选时,仅将请求与预设规则进行匹配。例如,如果只设置了请求规则,则表示此类请求,不论请求中包含的数据是什么,都筛选出来;如果只设置了数据规则,则所有请求,只要请求中包含的数据满足数据规则,都筛选出来;如果设置了请求规则和数据规则,则需要请求满足请求规则,且请求中包含的数据满足数据规则才筛选出来。
在一些示例性实施例中,请求规则包括以下至少之一:请求关键字、或请求的正则表达式。
具体在将请求与请求规则做匹配时,可以将表示请求的唯一标识与请求规则进行匹配。例如,对于超文本传输协议(HTTP,Hyper Text Transfer Protocol)或超文本传输安全协议(HTTPS,Hyper Text Transfer Protocol over Secure Socket Layer),表示请求的唯一标识可以是通用资源标识符(URI,Uniform Resource Identifier);又如,对于订阅模式,表示请求的唯一标识可以是订阅主题(topic),等等。
步骤102、当配置信息中存在与请求相匹配的预设规则时,对请求进行与请求相匹配的预设规则对应的处理。
在一些示例性实施例中,如图2所示,当预设规则包括请求规则时,配置信息中存在与请求相匹配的预设规则包括:配置信息中存在与表示请求的唯一标识相匹配的请求规则;
当预设规则包括数据规则时,配置信息中存在与请求相匹配的预设规则包括:配置信息中存在与请求中的数据相匹配的数据规则。
在一些示例性实施例中,对请求进行与请求相匹配的预设规则对应的处理包括:
根据预设规则与目标信息之间的对应关系,获取与请求相匹配的预设规则对应的目标信息;根据获取得到的目标信息对请求进行相应的处理。
在一些示例性实施例中,对应关系可以包含在上述配置信息中,如果上述配置信息只包含预设规则,那么应该另外配置对应关系,并且配置信息中的预设规则和对应关系中的预设规则应该保持一致。
在一些示例性实施例中,当预设规则包括:数据规则时,获取与请求相匹配的预设规则对应的目标信息包括:获取与请求中的数据相匹配的数据规则对应的目标信息。
在另一些示例性实施例中,当预设规则包括:请求规则时,获取与请求相匹配的规则对应的目标信息包括:获取与表示请求的唯一标识相匹配的请求规则对应的目标信息。
在另一些示例性实施例中,当预设规则包括:数据规则和请求规则时,获取与请求相匹配的规则对应的目标信息包括:获取与表示请求的唯一标识相匹配的请求规则和与请求中的数据相匹配的数据规则对应的目标信息。
在一些示例性实施例中,对请求进行的处理为与通用处理不同的其他处理。
在一些示例性实施例中,通用处理是指当前设备本身具有的处理,即常规处理,与通用处理不同的其他处理是指当前设备本身不具有的处理,也就是需要对某些请求进行的特殊处理,如差异性需求处理(如数据转换)、适配处理(如数据转换)、附加处理(如请求转发、请求通知、请求同步中至少之一)等中的至少之一。
在一些示例性实施例中,如图2所示,处理包括以下至少之一:
对请求进行的处理;
对请求中的数据进行的处理。
在一些示例性实施例中,对请求进行的处理包括以下至少之一:
请求转换、请求转发、请求通知、请求同步;
对请求中的数据进行的处理包括以下至少之一:
数据转换、数据存储。
在一些示例性实施例中,数据转换是指将请求中的数据转换为其他数据。例如,当请求中的数据与数据规则device/location/wifi匹配时,将请求中的数据转换成GPS数据,即经纬度信息。
在一些示例性实施例中,请求转换是指将请求转换为其他请求。例如,当请求中的数据与数据规则device/battery匹配时,判断请求中的数据是否符合条件(如是否小于或等于20%),如果请求中的数据符合条件,则生成通知请求(如低电告警通知请求),向相关的设备发送通知请求。
在一些示例性实施例中,请求转发或请求通知或请求同步是指将请求转发给指定设备。具体实现时,可以只将请求转发给指定设备,也可以将请求和请求中的数据转发给指定设备,也可以只将请求中的数据转发给指定设备,也可以根据请求和/或请求中的数据向指定设备发送另一个请求。例如,当请求与请求规则device/online匹配时,将请求转发给设备商的服务器,以便设备上能在自己的服务器上查看和统计设备的在线情况等。
在一些示例性实施例中,当目标信息为处理模块的识别参数时,根据获取得到的目标信息对请求进行相应的处理包括:
确定获取得到的目标信息对应的处理模块,将请求发送给确定出的处理模块,由确定出的处理模块对请求进行处理;
或者,确定获取得到的目标信息对应的处理模块,引用确定出的处理模块对请求进行处理。
在一些示例性实施例中,引用可以是直接调用,也可以是将请求放入请求发送队列,也可以是通过远程请求的方式调用。
在一些示例性实施例中,当配置信息中不存在与请求相匹配的预设规则时,则对请求进行通用处理或默认处理。
在一些示例性实施例中,基于预设的配置信息对请求进行筛选之前,该方法还包括:配置配置信息;或者,配置配置信息,以及预设规则与目标信息之间的对应关系。
在一些示例性实施例中,配置对应关系时,需要先配置目标信息和预设规则,然后配置目标信息和预设规则之间的对应关系。
在一些示例性实施例中,可以通过交互界面配置对应关系,也可以在出厂时预配置对应关系,也可以通过注册方式或接口方式配置对应关系。
在一些示例性实施例中,对应关系配置好以后,可以不再改变,也可以变更后进行同步生效。
本申请实施例提供的请求处理方法,基于预设的配置信息对请求进行筛选,当配置信息中存在与请求相匹配的预设规则时,对请求进行与请求相匹配的预设规则对应的处理,从而实现了对请求的监控,使得对满足特定条件的请求进行相应的处理,即实现了对请求的特殊处理。
本申请实施例提供的请求处理方法,实现了对数据的异常、请求的不合理等的监控、通过上述处理方法,实现了对特殊业务数据的差异性化处理、适配性处理、分发处理、额外的附加处理,新增请求处理等等,既解决差异的处理需求,各需求处理又模块化、组件化、独立化、插件化,同时又无需破坏平台服务或终端服务的通用性。
下面通过具体的示例详细说明本申请实施例的请求处理方法的具体实现过程,所列举的示例仅仅是为了说明方便,不用于限定本申请实施例的保护范围。
示例1
本示例中描述,某一个服务平台(即服务器)的服务上报接口,对上报的所有属性数据进行存储;但需要对上报的wifi信息进行统一的的经纬度转换,存储转换得到的经纬度信息,以便地址展示方能够直接将经纬度信息用地图软件显示出来。
1、配置请求规则、数据规则和目标信息之间的对应关系。
本示例中设置的对应关系如表1所示。
表1
目标信息 | 请求规则 | 数据规则 |
location | */report/* | device/loc_wifi |
本示例中设置的目标信息为处理插件的唯一识别符location,设置的请求规则为“*/report/*”,设置的数据规则为“device/loc_wifi”。
本示例中,采用”/”作为分隔符,分隔符可以自定义,匹配的力度,也可以自行定义。
如,请求规则*/report/*表示,若表示请求的唯一标识中包含“report”关键字,则筛选出来;
如,数据规则“device/loc_wifi”表示上报的JSON格式的数据中,若包含路径为device->loc_wifi的关键字的数据上报,则筛选出来,如某一次上报的JSON格式的数据如下:
上述上报的JSON格式的数据表示设备的WiFi信息有两个,其中一个WiFi信息包括:
媒体访问控制(MAC,Medica Access Control)地址:74:4a:a4:e6:b3:c0;
信号强度(sig):0;
服务集标识(SSID,Service Set Identifier):801ZTa-E6B3C0;
噪声(noise):0;
年龄(age):0;
另外一个WiFi信息包括:
MAC地址:0e:74:9c:65:ca:a6;
信号强度(sig):0;
噪声:0;
年龄:0。
路径也可以自定定义,甚至可以增加数组的表达方式,如device/loc_wifi/[0]/mac,表示上报的是WiFi信息,且第一个WiFi信息有MAC地址。
2、report接口接收到客户端的请求,请求中包括的数据为:
则将请求规则“*/report/*”与请求进行匹配,将数据规则“device/loc_wifi”与请求中的数据进行匹配,请求规则“*/report/*”与请求相匹配,数据规则“device/loc_wifi”与请求中的数据相匹配,将请求引用至“location”,由location对请求进行处理。
3、处理
本示例中,“location”是一个插件的识别符,请求被引用(包括直接调用,请求命令发送队列,远程请求等各种方式)到识别符为location的处理插件后,由识别符为location的插件进行真正的wifi信息到经纬度信息的转换。转换后,可直接由识别符为location的插件存储,或识别符为location的插件将请求流转至原平台进行通用的处理(如存储),其流转方式不限定,可以是队列传递,回调和远程调用等任意方式,同“引用”,不限定。
location也可以是一个jar包,独立的插件服务,甚至一个独立的外部服务,或者一个内部方法。
示例2
本示例中描述,某一个服务平台(即服务器)的服务上报接口,对上报的所有属性数据进行存储;但需要对上报的电量,进行低电筛选,低电的情况,需要发送通知至某些终端。
S10:配置
1、配置请求规则、数据规则和目标信息之间的对应关系。
本示例中设置的对应关系如表2所示。
表2
目标信息 | 请求规则 | 数据规则 |
project_default_plugin | */report/* | device/battery |
本示例中设置的目标信息为处理插件的唯一识别符project_default_plugin,设置的请求规则为“*/report/*”,设置的数据规则为“device/battery”。
本示例中,采用”/”作为分隔符,分隔符可以自定义,匹配的力度,也可以自行定义。
如,请求规则*/report/*表示,若表示请求的唯一标识中包含“report”关键字,则筛选出来;
如,数据规则,“device/battery”表示上报的JSON格式的数据中,若包含路径为device->battery关键字的数据上报,则筛选出来,如某一次上报的JSON格式的数据如下:
上述上报的JSON格式的数据表示设备的剩余电量为80%。
路径也可以自定定义,甚至可以增加数组的表达方式,该示例中,无需数组方式。
2、report接口接收到客户端的请求,请求中包括的数据为:
则将请求规则“*/report/*”与请求进行匹配,将数据规则“device/battery”与请求中的数据进行匹配,请求规则“*/report/*”与请求相匹配,数据规则“device/battery”与请求中的数据相匹配,将请求引用至“project_default_plugin”,由project_default_plugin进行处理。
3、处理
本示例中,“project_default_plugin”是一个插件的识别符,请求被引用(包括直接调用,请求命令发送队列,远程请求等各种方式)到识别符为project_default_plugin的插件后,由识别符为project_default_plugin的插件进行剩余电量是否低于预设阈值的判断,若剩余电量低于预设阈值,则向服务平台请求发送或广播通知(notification)请求。同时由识别符为“project_default_plugin”的插件将电量进行存储,或将原请求流转至原服务平台进行通用的处理(如存储),其流转方式不限定,可以是队列传递,回调和远程调用等任意方式,同“引用”,不限定。
唯一识别符为“project_default_plugin”的处理插件除了可以处理低电判断业务,还可以处理其他业务,甚至示例1,示例2等,可以由同一个“处理插件”来处理。
示例3
本示例中描述某设备接入服务平台(即服务器)的服务时,设备商希望服务平台能将此类设备的某种请求或全部请求转发至设备商自己的后台服务器,以便设备商能够进行自己的统计等业务处理和数据查看。如,设备商希望订阅设备对服务平台的状态上报信息,以便设备商可以在自己的后台统计上线下线设备数据。
1、配置请求规则、数据规则和目标信息之间的对应关系。
本示例中设置的对应关系如表3所示。
表3
目标信息 | 请求规则 | 数据规则 |
https://*.*.*.*:443/report | */report/* | device/status |
本示例中设置的目标信息为处理服务器的唯一识别符https://*.*.*.*:443/report,设置的请求规则为“*/report/*”,设置的数据规则为“device/status”。
本示例中,采用”/”作为分隔符,分隔符可以自定义,匹配的力度,也可以自行定义。
如,请求规则*/report/*表示,若表示请求的唯一标识中包含“report”关键字,则筛选出来;
如,数据规则,“device/status”表示上报的JSON格式的数据中,若包含路径为device->status关键字的数据上报,则筛选出来,如某一次上报的JSON格式的数据如下:
上述上报的JSON格式的数据表示设备处于上线状态。
2、report接口接收到客户端的请求,请求中包括的数据为:
则将请求规则“*/report/*”与请求进行匹配,将数据规则“device/status”与请求中的数据进行匹配,请求规则“*/report/*”与请求相匹配,数据规则“device/battery”与请求中的数据相匹配,将该请求远程请求至设备上服务器“https://*.*.*.*:443/report”,由https://*.*.*.*:443/report对应的服务进行处理。
3、处理
https://*.*.*.*:443/report,为设备商的一个后台服务器,接收到设备的状态数据后,进行存储,以便后续展示和统计设备状态信息。
该示例中,无需将请求进行“回调”,纯属请求的异步同步和转发。
示例4
本示例描述终端某应用,需要实现对所有请求,根据其内容进行分发处理。不同数据,由不同模块或应用来处理。
配置请求规则、数据规则和目标信息之间的对应关系。
本示例中设置的对应关系如表4所示。
表4
以上数据,均为示意。
本示例中设置了三条对应关系项。第一条对应关系项设置的目标信息为处理模块的唯一识别符com.demo.bluetooth,设置的请求规则为“connect”,设置的数据规则为“/bluetooth”;第二条对应关系项设置的目标信息为处理模块的唯一识别符com.demo.wifi,设置的请求规则为“connect”,设置的数据规则为“/wifi”;第三条对应关系项设置的目标信息为处理服务器的唯一识别符https://*.*.*.*:443/response,设置的请求规则为“response”,设置的数据规则为缺省。
2、如果该应用收到connect类型的请求,请求中的数据为:
则将请求通过广播等接口方式,传递至蓝牙模块(即唯一识别符为com.demo.bluetooth的处理模块),进行蓝牙连接请求。
如果该应用接收到connect类型的请求,请求中的数据为:
则将请求通过广播等接口方式,传递至WIFI模块(即唯一识别符为com.demo.wifi的处理模块),进行WIFI连接请求。
同时,还可以监听各模块处理结果,如果有响应(response)结果上报,都通过该应用统一反馈给唯一识别符为https://*.*.*.*:443/response的处理服务器。
3、处理
本示例有两个处理模块和一个处理服务器,各自完成自己的业务逻辑。
第二方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;
存储器,存储器上存储有至少一个程序,当至少一个程序被至少一个处理器执行,使得至少一个处理器实现上述任意一种请求处理方法。
其中,处理器为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH)。
在一些实施例中,处理器、存储器通过总线相互连接,进而与计算设备的其它组件连接。
第三方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任意一种请求处理方法。
图3为本申请另一个实施例提供的请求处理装置的组成框图。
第四方面,参照图3,本申请另一个实施例提供一种请求处理装置,包括:
请求监控模块301,用于接收请求;基于预设的配置信息对所述请求进行筛选;
请求处理模块302,用于当所述配置信息中存在与所述请求相匹配的预设规则时,对所述请求进行与所述请求相匹配的预设规则对应的处理。
在一些示例性实施例中,请求处理模块302具体用于采用以下方式实现对请求进行与请求相匹配的预设规则对应的处理:
根据预设规则与目标信息之间的对应关系,获取与请求相匹配的预设规则对应的目标信息;根据获取得到的目标信息对请求进行相应的处理。
在一些示例性实施例中,目标信息与对应的处理为一一对应的关系。
在一些示例性实施例中,目标信息包括以下任意一个:
与目标信息对应的处理的识别参数、处理模块的识别参数;其中,处理模块用于实现与目标信息对应的处理。
在一些示例性实施例中,识别参数包括以下任意一个:
识别符、名称、地址、身份信息。
在一些示例性实施例中,处理模块包括以下任意一个:
插件、组件、服务器、实例对象、接口。
在一些示例性实施例中,处理包括以下至少之一:
对请求进行的处理;
对请求中的数据进行的处理。
在一些示例性实施例中,对请求进行的处理包括以下至少之一:请求转换、请求转发、请求通知、请求同步;
对请求中的数据进行的处理包括以下至少之一:
数据转换、数据存储。
在一些示例性实施例中,预设规则包括以下至少之一:数据规则、请求规则。
在一些示例性实施例中,当预设规则包括请求规则时,配置信息中存在与请求相匹配的预设规则包括:配置信息中存在与表示请求的唯一标识相匹配的请求规则;
当预设规则包括数据规则时,配置信息中存在与请求相匹配的预设规则包括:配置信息中存在与请求中的数据相匹配的数据规则。
在一些示例性实施例中,请求规则包括以下至少之一:请求关键字、请求的正则表达式。
在一些示例性实施例中,数据规则包括以下至少之一:数据关键字、数据的正则表达式。
在一些示例性实施例中,数据关键字包括:带路径的关键字。
在一些示例性实施例中,当目标信息为用于实现处理的处理模块唯一识别符、或唯一表示用于实现处理的处理模块的名称时,请求处理模块302包括:确定子模块和至少一个处理模块;
确定子模块,用于当配置信息中存在与请求相匹配的预设规则时,在预设规则与目标信息之间的对应关系中,获取与请求相匹配的预设规则对应的目标信息;确定获取得到的目标信息对应的处理模块,将请求发送给确定出的处理模块;或者,确定获取得到的目标信息对应的处理模块,引用确定出的处理模块;
处理模块,用于对请求进行处理。
上述请求处理装置的具体实现过程与前述实施例的请求处理方法的具体实现过程相同,这里不再赘述。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、***、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储器、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其它实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本申请的范围的情况下,可进行各种形式和细节上的改变。
Claims (11)
1.一种请求处理方法,包括:
接收请求;
基于预设的配置信息对所述请求进行筛选,以确定是否对所述请求进行与所述配置信息对应的处理;
当所述配置信息中存在与所述请求相匹配的预设规则时,对所述请求进行与所述请求相匹配的预设规则对应的处理;其中,对所述请求进行的处理为与通用处理不同的其他处理;所述通用处理是指当前设备本身具有的处理,即常规处理;
其中,所述处理包括以下至少之一:
对所述请求进行的处理;
对所述请求中的数据进行的处理;
其中,所述对请求进行的处理包括以下至少之一:请求转换、请求转发、请求通知、请求同步;
所述对请求中的数据进行的处理包括以下至少之一:
数据转换、数据存储。
2.根据权利要求1所述的请求处理方法,其中,所述对请求进行与请求相匹配的预设规则对应的处理包括:
根据预设规则与目标信息之间的对应关系,获取与所述请求相匹配的预设规则对应的目标信息;根据获取得到的目标信息对所述请求进行相应的处理。
3.根据权利要求2所述的请求处理方法,其中,所述目标信息与对应的处理为一一对应的关系。
4.根据权利要求2或3所述的请求处理方法,其中,所述目标信息包括以下任意一个:
与所述目标信息对应的处理的识别参数、处理模块的识别参数;其中,所述处理模块用于实现与所述目标信息对应的处理。
5.根据权利要求4所述的请求处理方法,其中,所述识别参数包括以下任意一个:
识别符、名称、地址、身份信息。
6.根据权利要求4所述的请求处理方法,其中,所述处理模块包括以下任意一个:
插件、组件、服务器、实例对象、接口。
7.根据权利要求1-3任一项所述的请求处理方法,其中,所述预设规则包括以下至少之一:数据规则、请求规则。
8.根据权利要求7所述的请求处理方法,其中,当所述预设规则包括所述请求规则时,所述配置信息中存在与请求相匹配的预设规则包括:所述配置信息中存在与表示所述请求的唯一标识相匹配的请求规则;
当所述预设规则包括所述数据规则时,所述配置信息中存在与请求相匹配的预设规则包括:所述配置信息中存在与所述请求中的数据相匹配的数据规则。
9.根据权利要求7所述的请求处理方法,其中,所述数据规则包括以下至少之一:
数据关键字、数据的正则表达式;其中,所述数据关键字包括:带路径的关键字;
所述请求规则包括以下至少之一:请求关键字、请求的正则表达式。
10.一种电子设备,包括:
至少一个处理器;
存储器,所述存储器上存储有至少一个程序,当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现根据权利要求1-9任意一项所述的请求处理方法。
11.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现根据权利要求1-9任意一项所述的请求处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010765080.5A CN112351059B (zh) | 2020-07-30 | 2020-07-30 | 请求处理方法和装置、电子设备、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010765080.5A CN112351059B (zh) | 2020-07-30 | 2020-07-30 | 请求处理方法和装置、电子设备、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112351059A CN112351059A (zh) | 2021-02-09 |
CN112351059B true CN112351059B (zh) | 2021-09-10 |
Family
ID=74357572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010765080.5A Active CN112351059B (zh) | 2020-07-30 | 2020-07-30 | 请求处理方法和装置、电子设备、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112351059B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860463B (zh) * | 2021-03-22 | 2024-06-14 | 平安商业保理有限公司 | 业务请求转发方法、装置、计算机设备和可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102638356A (zh) * | 2011-12-30 | 2012-08-15 | 北京四达时代软件技术股份有限公司 | 一种业务数据的处理方法、装置及*** |
CN106385397A (zh) * | 2015-07-31 | 2017-02-08 | 腾讯科技(深圳)有限公司 | 网络接入设备访问控制及类型配置方法和装置 |
CN106557030A (zh) * | 2015-09-25 | 2017-04-05 | 华为技术有限公司 | 基于实体的操作指示方法及装置 |
CN107465693A (zh) * | 2017-09-18 | 2017-12-12 | 北京小度信息科技有限公司 | 请求消息处理方法和装置 |
CN108449418A (zh) * | 2018-03-29 | 2018-08-24 | 新华三云计算技术有限公司 | 一种混合云平台管理***及方法 |
CN108989365A (zh) * | 2017-05-31 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、服务器、终端设备及存储介质 |
CN109635019A (zh) * | 2018-10-23 | 2019-04-16 | 平安科技(深圳)有限公司 | 请求处理方法、装置、设备及存储介质 |
CN110457382A (zh) * | 2019-08-12 | 2019-11-15 | 中国联合网络通信集团有限公司 | 业务处理方法及设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10454804B2 (en) * | 2016-11-07 | 2019-10-22 | Hughes Network Systems, Llc | Application characterization using transport protocol analysis |
CN108897691B (zh) * | 2018-06-29 | 2022-02-15 | 百度在线网络技术(北京)有限公司 | 基于接口模拟服务的数据处理方法、装置、服务器和介质 |
CN111209094A (zh) * | 2018-11-21 | 2020-05-29 | 北京小桔科技有限公司 | 请求处理方法、装置、电子设备及计算机可读存储介质 |
CN109815013A (zh) * | 2019-01-02 | 2019-05-28 | 深圳壹账通智能科技有限公司 | 业务数据处理方法、装置、计算机设备和存储介质 |
CN109639840A (zh) * | 2019-02-25 | 2019-04-16 | 网宿科技股份有限公司 | 一种基于边缘计算的数据处理方法和边缘计算*** |
CN110610352B (zh) * | 2019-09-16 | 2023-09-19 | 中国铁塔股份有限公司 | 一种流程处理方法、装置、电子设备及计算机可读存储介质 |
CN111324843A (zh) * | 2020-02-17 | 2020-06-23 | 政采云有限公司 | 一种前端请求处理方法、装置、设备及可读存储介质 |
-
2020
- 2020-07-30 CN CN202010765080.5A patent/CN112351059B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102638356A (zh) * | 2011-12-30 | 2012-08-15 | 北京四达时代软件技术股份有限公司 | 一种业务数据的处理方法、装置及*** |
CN106385397A (zh) * | 2015-07-31 | 2017-02-08 | 腾讯科技(深圳)有限公司 | 网络接入设备访问控制及类型配置方法和装置 |
CN106557030A (zh) * | 2015-09-25 | 2017-04-05 | 华为技术有限公司 | 基于实体的操作指示方法及装置 |
CN108989365A (zh) * | 2017-05-31 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、服务器、终端设备及存储介质 |
CN107465693A (zh) * | 2017-09-18 | 2017-12-12 | 北京小度信息科技有限公司 | 请求消息处理方法和装置 |
CN108449418A (zh) * | 2018-03-29 | 2018-08-24 | 新华三云计算技术有限公司 | 一种混合云平台管理***及方法 |
CN109635019A (zh) * | 2018-10-23 | 2019-04-16 | 平安科技(深圳)有限公司 | 请求处理方法、装置、设备及存储介质 |
CN110457382A (zh) * | 2019-08-12 | 2019-11-15 | 中国联合网络通信集团有限公司 | 业务处理方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112351059A (zh) | 2021-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11750702B2 (en) | Subscription and notification service | |
US20230319534A1 (en) | Cross-resource subscription for m2m service layer | |
US20200344189A1 (en) | Communication method and communication apparatus | |
CN107517438B (zh) | 请求分享蓝牙设备的方法及电子设备、计算机存储介质 | |
US9753794B2 (en) | Method and apparatus for controlling sending of heartbeat signal | |
US8719332B2 (en) | Method and system for content categorization | |
US11108648B2 (en) | Information processing method in M2M and apparatus | |
US10999357B1 (en) | Data transmission system and data transmission method | |
US20220286525A1 (en) | Service layer message templates in a communications network | |
CN112351059B (zh) | 请求处理方法和装置、电子设备、计算机可读存储介质 | |
US20160156736A1 (en) | Method and device for generating forwarding information | |
CN113315689B (zh) | 信息处理方法、***、电子设备和可读存储介质 | |
WO2020001738A1 (en) | Communication protocol discover method in constrained application protocol (coap) | |
CN111399749B (zh) | 一种数据处理***及方法 | |
CN110572350B (zh) | 一种进行ims业务注册的方法和设备 | |
JP7516653B2 (ja) | 端末検証を実現するための方法、装置、システム、デバイス、および記憶媒体 | |
CN112637151B (zh) | 数据消息的传输方法、终端设备、服务器及存储介质 | |
US20200065508A1 (en) | Device and method to share image received from user terminal with other user terminals | |
US12052317B2 (en) | Subscription and notification service | |
WO2022213903A1 (zh) | 一种边缘配置服务器信息处理方法、装置和通信设备 | |
WO2024130729A1 (zh) | 传输信息的方法、客户端设备及云平台 | |
WO2021121628A1 (en) | Dynamic distribution of a computational graph | |
CN118413822A (zh) | 车辆数据包转发方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |