CN113918129A - 前后端分离的接口请求处理方法和装置 - Google Patents
前后端分离的接口请求处理方法和装置 Download PDFInfo
- Publication number
- CN113918129A CN113918129A CN202111188519.3A CN202111188519A CN113918129A CN 113918129 A CN113918129 A CN 113918129A CN 202111188519 A CN202111188519 A CN 202111188519A CN 113918129 A CN113918129 A CN 113918129A
- Authority
- CN
- China
- Prior art keywords
- field
- request
- data
- service
- interface
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提出了一种前后端分离的接口请求处理方法和装置,所述方法包括:将前端数据层加载在网页上作为组件在浏览器端执行;获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内置所述请求字段和业务字段的映射关系;在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。能够实现集中维护和转换前端函数、后端接口,从而在后端开发完成后维护映射字段即可完成对接,实现了提高开发效率和前端代码的可维护性的有益效果。
Description
技术领域
本申请涉及计算机网络通信领域,特别是涉及一种前后端分离的接口请求处理方法和装置。
背景技术
传统的互联网应用中存在大量前后端耦合的web系统,为了提升Web页面的开发效率,前后端分离技术应运而生。这种前后端分离技术通过将页面交由前端渲染,后端只负责接口提供数据,展示层完全交给前端,实现了前后端的解耦,前后端得以同步进行开发。并且前端通过AJAX技术与后端进行通信,后端专注于业务数据的逻辑,前端专注于页面交互的处理,从代码到技术到人员全面解耦,既提升了开发效率,还降低了前端对后端的依赖性。
在现有的前后端分离框架中,如果前后端进行同步开发,那么为了前端为了完成和后端的接口对接,需要在前端开发完成后需要再进行一次小规模的修改,导致了前端的开发变得比较破碎,效率不高,前后端的开发时间也会出现一定的错位。另外,由于前端的业务比较分散,接口的修改分散在业务代码中,也不利于代码的维护。
综上,针对现有的前后端分离技术在后端开发完成后,前端仍需要在业务代码中对接口进行修改以完成和后端的接口对接存在的开发效率低以及可维护性低的问题,目前尚未得到有效解决方案。
发明内容
本申请实施例提供了一种前后端分离的接口请求处理方法和装置,针对现有的前后端分离技术在后端开发完成后,前端仍需要在业务代码中对接口进行修改以完成和后端的接口对接存在的开发效率低以及可维护性低的问题,能够通过前端函数实现集中维护和转换后端接口字段,从而在后端开发完成后维护映射字段即可完成对接,实现了提高开发效率和前端代码的可维护性的有益效果。
第一方面,本申请实施例提供了一种前后端分离的接口请求处理方法,所述方法包括:将前端数据层加载在网页上在浏览器端执行;在所述浏览器端向服务端发起数据请求后,获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内预设所述请求字段和业务字段的映射关系;在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。
在其中一些实施例中,所述前端数据层包括接口处理器、数据模型以及接口转换器,其中,所述请求字段和所述业务字段由所述接口处理器进行传输,所述数据模型内置所述请求字段和所述业务字段的所述映射关系,通过所述接口转换器将所述数据请求携带的每个所述请求字段转换为相应的所述业务字段。
在其中一些实施例中,所述方法还包括:基于所述映射关系,以及所述业务字段与所述业务数据的第一对应关系,获取所述请求字段与所述业务数据的第二对应关系,以使所述浏览器端根据所述第二对应关系将所述业务数据渲染到所述网页上。
在其中一些实施例中,所述映射关系包括:前端字段表、每个所述业务字段对应有字段类型、字段名称、默认值。
在其中一些实施例中,所述方法还包括:对所述前端数据层中的所述映射关系进行字段修改,所述字段修改包括:增加和/或删除和/或修改至少一个所述请求字段与所述业务字段的映射配置。
在其中一些实施例中,所述数据请求包括接口调用请求,所述接口调用请求用于请求调用所述网页中的所述请求字段所对应的目标接口;在每个所述目标接口的接口函数中使用装饰器加载所述数据模型内置的配置方法,并基于所述配置方法得到所述请求字段和所述业务字段的所述映射关系,以使所述目标接口根据所述映射关系进行数据转换。
在其中一些实施例中,所述方法还包括:判断所述映射关系中的所述业务字段的所述字段类型与所述服务端所需的所述业务字段的所述字段类型是否一致,当类型不一致时,对所述映射关系中的所述业务字段的所述字段类型做转换,以使所述请求字段根据转换后的所述映射关系转换为所述服务端所需的所述业务字段。
第二方面,本申请实施例提供了一种前后端分离的接口请求处理装置,包括:加载模块,用于将前端数据层加载在网页上在浏览器端执行;获取模块,用于在所述浏览器端向服务端发起数据请求后,获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内预设所述请求字段和业务字段的映射关系;转换模块,用于在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。
第三方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行第一方面任一项所述的前后端分离的接口请求处理方法。
第四方面,本申请实施例提供了一种计算机程序产品,包括软件代码部分,当所述计算机程序产品在计算机上被运行时,所述软件代码部分用于执行根据第一方面任一项所述的前后端分离的接口请求处理方法。
第五方面,本申请实施例提供了一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序包括用于控制过程以执行过程的程序代码,所述过程包括根据第一方面任一项所述的前后端分离的接口请求处理方法。
本申请实施例的主要贡献和创新点如下:
本申请实施例通过在Web页面上加载接口数据层,在接口数据层中增加前后端的字段映射配置,在项目开发中,待后端开发完成后,前端只需要修改模型中的字段映射配置信息即可完成对业务代码的修改,无需在原有的业务代码中进行多处修改,因此明显提高了开发效率和前端代码的可维护性。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的前后端分离的接口请求处理方法的流程图;
图2是根据本申请实施例的应用前后端分离的接口请求处理方法的应用系统架构图;
图3是根据本申请实施例的前后端分离的接口请求处理装置的结构框图;
图4是根据本申请实施例的电子装置的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
实施例一
本申请实施例提供了一种前后端分离的接口请求处理方法,参考图1,所述方法包括:
步骤S101、将前端数据层加载在网页上在浏览器端执行。
步骤S102、在所述浏览器端向服务端发起数据请求后,获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内预设所述请求字段和业务字段的映射关系。
步骤S103、在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。
在本实施例中,网页所需的请求字段可以是网页上的组成部分,以表单数据为例,表单数据中包含了多个请求字段,如姓名、年龄、地址等等,每个表单数据可以对应服务器端的一个接口,通过调用网页中该表单数据对应的接口即可获取接口返回的业务数据。
示例性的,以表单数据:列表和表格为例,当浏览器端请求在网页中展示列表和表格,那么浏览器端向服务端发送调用网页中列表/表格的接口,以调用展示列表/表格所需的数据。需要说明的是,浏览器每次发起的数据请求可以是针对网页中多组表单数据的一个或多个接口调用,浏览器接收到的可以是对应的每个接口返回的业务数据。
在本实施例中,前端数据层是一个浏览器组件,加载后可以在网页上被调用执行以使请求字段被转换为业务字段。示例性的,以网页上需获取接口返回的所有用户姓名为例,在前后端分离开发过程中,前端中定义的用户姓名为请求字段“name”,待后端开发完成后,后端中定义的用户姓名为业务字段“u_name”,那么在现有的方案中,需要在前端业务代码中对接口进行修改,将“name”对应修改成“u_name”从而完成与后端接口的对接,这样的操作不仅仅需要大量的修改,降低了开发效率,同时也不利于后期维护。而在本实施例中,当获取到浏览器端发起的对“name”字段的数据请求后,由浏览器组件:前端数据层根据内置的“name”和“u_name”的映射关系将“name”转换成“u_name”,将转换得到的“u_name”替换原有的“name”跟随数据请求一起被发送到服务端,服务端将“u_name”对应的数据返回给网页进行渲染。本实施例一大技术点在于,通过在浏览器中加载前端数据层,字段的映射的配置以及后续字段修改都可以在前端数据层完成,不需要再回到业务代码中修改,因此开发效率以及可维护性大大提高。
在其中一些实施例中,所述前端数据层包括接口处理器、数据模型以及接口转换器,其中,所述请求字段和所述业务字段由所述接口处理器进行传输,所述数据模型内置所述请求字段和所述业务字段的所述映射关系,通过所述接口转换器将所述数据请求携带的每个所述请求字段转换为相应的所述业务字段。
如图2所示,在本实施例中,Web页面201载入请求字段,请求字段从Web页面流入接口处理器203中,接口处理器203将请求字段传入数据模型204,其中,数据模型中204内置由数据转换器205根据前端配置生成的映射对象,将映射对象流入接口处理203中,由接口处理器203将映射对象发送给服务端获取对应的业务数据。
需要说明的是,在本实施例中数据转换器205内置在数据模型204中,在其他实施例中,数据转换器205还可以作为一个单独的模块与数据模型204并列置于接口数据层202中。
具体地,可以在数据模型中定义formatConfig(config)来实现转换,其中,formatConfig为方法名;config为配置参数,数据模型向formatConfig中传入请求字段和业务字段的映射关系,得到映射对象,其中映射对象为映射字段的集合。具体内容如下:
{type:‘String’,field:‘name’,default:‘wang’,map:{}}
其中,type代表字段的数据类型,field代表字段的名称,default代表字段的默认值,map代表字段值和前端展示值的映射关系。
本实施例基于映射关系进行转换的方法与现有技术区别在于并非简单的进行映射,而是在映射时对数据的类型或者表达含义类的属性进行了转换处理,例如,在数据库中0代表“否”,1代表“是”,在前端获取数据时通常是获取到数字0、1,再对数字进行转换得到相应的文字,而本方案在map里可以定义0对应“否”、1对应“是”进行值映射,将1这个值和‘是’关联,只要该字段是1在前端页面输出就会是‘是’,那么前端获取到的业务数据可以直接是前端所需的文本内容,也就是说,在本实施例的转换方法中基于映射关系对数据的类型或表达含义也做了转换,使得前端获取到的数据无需再进一步转换。
需要说明的是,在本申请中值映射针对的是后端的业务字段和业务数据的转换,对默认值也能进行处理,转换的范围更广。
在其中一些实施例中,所述方法还包括:基于所述映射关系,以及所述业务字段与所述业务数据的第一对应关系,获取所述请求字段与所述业务数据的第二对应关系,以使所述浏览器端根据所述第二对应关系将所述业务数据渲染到所述网页上。
示例性的,第一对应关系可以是:name——“张三”,那么第二对应关系是u_name——“张三”,在网页中需要获取“张三”数据,因此浏览器端发出的数据请求中携带name字段,而在服务端中与“张三”对应的是u_name字段,因此将name转换为u_name,使得u_name与“张三”建立第二对应关系,并且获取业务数据“张三”返回给浏览器端,使得浏览器根据第一对应关系name——“张三”将业务数据“张三”渲染到网页上。
在其中一些实施例中,所述映射关系包括:前端字段表、每个所述业务字段对应有字段类型、字段名称、默认值。
在本实施例中,前端字段表是请求字段的集合,例如,name、age、address等等,业务字段包括u_name或者u_age或者u_address,字段类型对应业务字段为string、char、string,字段名称对应的为姓名、年龄、地址,默认值可以对应设置为“wang”、“18”、“China”。
在本实施例中通过设置字段类型,在转换时可以判断业务数据的类型是否与浏览器端所需获取的数据类型相匹配,例如,浏览器中的age中需要返回的是年龄区间,例如“小于16岁”、“16至25岁”、“25岁以上”,而在业务字段中,age的字段类型为char,不满足浏览器端所需展示的数据类型,因此可以将业务数据中的具体年龄数值转换为string类型的字符串信息。
具体地,转换字段类型的方法包括:判断所述映射关系中的所述业务字段的所述字段类型与所述服务端所需的所述业务字段的所述字段类型是否一致,当类型不一致时,对所述映射关系中的所述业务字段的所述字段类型做转换,以使所述请求字段根据转换后的所述映射关系转换为所述服务端所需的所述业务字段。
以获取表单数据为例,在数据模型中定义toData(data)实现将本地表单数据转换为服务端接口数据的方法。
其中toData是方法名;data为本地表单数据;对data数据遍历,将每一项数据传入一个将本地表单字段转换为服务端接口字段的方法具体内容如下:
setFieldValue(data,config)
其中setFieldValue为方法名;data为本地表单数据;config为数据模型204中的映射对象;通过setFieldValue方法得到一个转换后的接口字段对象,具体内容如下:
若config中配置有map,则先对data做映射处理,转换成map的键值;
若config中配置类型为数组,后端要求为字符串,则对数组类型做字符串化处理;
然后对config中的键值进行遍历,将data的key值根据config中的字段映射关系转换为接口所需的键值;
最后输出转换后的data对象。
在其中一些实施例中,所述方法还包括:对所述前端数据层中的所述映射关系进行字段修改,所述字段修改包括:增加和/或删除和/或修改至少一个所述请求字段与所述业务字段的映射配置。
在本实施例中,通过将前端数据层加载在浏览器端执行转换方式,将接口所需业务字段根据配置文件中配置好的映射关系来转换,从而使前端开发人员只需要集中配置映射关系即可维护现有的字段,这种方法能够避免在原先开发好的业务代码中修改字段名称,因此大大提高了开发效率和代码的可维护性。
在其中一些实施例中,所述数据请求包括接口调用请求,所述接口调用请求用于请求调用所述网页中的所述请求字段所对应的目标接口;在每个所述目标接口的接口函数中使用装饰器加载所述数据模型内置的配置方法,并基于所述配置方法得到所述请求字段和所述业务字段的所述映射关系,以使所述目标接口根据所述映射关系进行数据转换。
在本实施例中,装饰器用于修改目标接口的原有的配置方法,具体地,装饰器能够在不改变原有的配置方法的函数名、类名的情况下,给函数增加新的功能,例如原有的接口配置方法中没有字段的转换方法,通过装饰器能够拓展原有函数功能,增加字段转换方法。使得从装饰器中可以获取到经过装饰的各个接口的配置方法,基于装饰过的配置方法得到映射关系。
综上,本申请实施例提供了一种前后端分离的接口请求处理方法,该方法通过在浏览器端加载接口处理器来接收服务端发送的响应的业务数据信息(包括业务字段和业务数据)以及向服务端发送Web页面的表单数据信息(包括表单字段和表单数据)在浏览器端加载数据模型将请求字段和业务字段进行映射得到配置文件,并且在数据模型中内置接口转换器基于配置文件中的映射关系将请求字段转换为服务端所需业务字段或者将业务字段转换为浏览器端所需请求字段。通过在配置文件中集中维护现有的字段,并且在开发过程中前端只需要通过映射关系即可完成与后端接口的对接,因此在前后端开发时能真正实现同步开发,提高开发效率以及前端代码的可维护性。
实施例二
本申请还提出了一种前后端分离的接口请求处理装置,参考图3,包括:
加载模块301,用于将前端数据层加载在网页上在浏览器端执行。
获取模块302,用于在所述浏览器端向服务端发起数据请求后,获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内预设所述请求字段和业务字段的映射关系。
转换模块303,用于在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。
实施例三
本实施例还提供了一种电子装置,参考图4,包括存储器404和处理器402,该存储器404中存储有计算机程序,该处理器402被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
具体地,上述处理器402可以包括中央处理器(CPU),或者特定集成电路(ApplicationSpecificIntegratedCircuit,简称为ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
其中,存储器404可以包括用于数据或指令的大容量存储器404。举例来说而非限制,存储器404可包括硬盘驱动器(HardDiskDrive,简称为HDD)、软盘驱动器、固态驱动器(SolidStateDrive,简称为SSD)、闪存、光盘、磁光盘、磁带或通用串行总线(UniversalSerialBus,简称为USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器404可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器404可在数据处理装置的内部或外部。在特定实施例中,存储器404是非易失性(Non-Volatile)存储器。在特定实施例中,存储器404包括只读存储器(Read-OnlyMemory,简称为ROM)和随机存取存储器(RandomAccessMemory,简称为RAM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(ProgrammableRead-OnlyMemory,简称为PROM)、可擦除PROM(ErasableProgrammableRead-OnlyMemory,简称为EPROM)、电可擦除PROM(ElectricallyErasableProgrammableRead-OnlyMemory,简称为EEPROM)、电可改写ROM(ElectricallyAlterableRead-OnlyMemory,简称为EAROM)或闪存(FLASH)或者两个或更多个以上这些的组合。在合适的情况下,该RAM可以是静态随机存取存储器(StaticRandom-AccessMemory,简称为SRAM)或动态随机存取存储器(DynamicRandomAccessMemory,简称为DRAM),其中,DRAM可以是快速页模式动态随机存取存储器404(FastPageModeDynamicRandomAccessMemory,简称为FPMDRAM)、扩展数据输出动态随机存取存储器(ExtendedDateOutDynamicRandomAccessMemory,简称为EDODRAM)、同步动态随机存取内存(SynchronousDynamicRandom-AccessMemory,简称SDRAM)等。
存储器404可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器402所执行的可能的计算机程序指令。
处理器402通过读取并执行存储器404中存储的计算机程序指令,以实现上述实施例中的任意一种前后端分离的接口请求处理方法。
可选地,上述电子装置还可以包括传输设备406以及输入输出设备408,其中,该传输设备406和上述处理器402连接,该输入输出设备408和上述处理器402连接。
传输设备406可以用来经由一个网络接收或者发送数据。上述的网络具体实例可包括电子装置的通信供应商提供的有线或无线网络。在一个实例中,传输设备包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备406可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
输入输出设备408用于输入或输出信息。在本实施例中,输入的信息可以是获取的数据请求、请求字段等,输出的信息可以是业务字段、映射关系、业务数据等。
可选地,在本实施例中,上述处理器402可以被设置为通过计算机程序执行以下步骤:
S101、将前端数据层加载在网页上在浏览器端执行。
S102、在所述浏览器端向服务端发起数据请求后,获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内预设所述请求字段和业务字段的映射关系。
S103、在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
通常,各种实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。本发明的一些方面可以以硬件来实现,而其他方面可以以可以由控制器、微处理器或其他计算设备执行的固件或软件来实现,但是本发明不限于此。尽管本发明的各个方面可以被示出和描述为框图、流程图或使用一些其他图形表示,但是应当理解,作为非限制性示例,本文中描述的这些框、装置、系统、技术或方法可以以硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备或其某种组合来实现。
本发明的实施例可以由计算机软件来实现,该计算机软件由移动设备的数据处理器诸如在处理器实体中可执行,或者由硬件来实现,或者由软件和硬件的组合来实现。包括软件例程、小程序和/或宏的计算机软件或程序(也称为程序产品)可以存储在任何装置可读数据存储介质中,并且它们包括用于执行特定任务的程序指令。计算机程序产品可以包括当程序运行时被配置为执行实施例的一个或多个计算机可执行组件。一个或多个计算机可执行组件可以是至少一个软件代码或其一部分。另外,在这一点上,应当注意,如图中的逻辑流程的任何框可以表示程序步骤、或者互连的逻辑电路、框和功能、或者程序步骤和逻辑电路、框和功能的组合。软件可以存储在诸如存储器芯片或在处理器内实现的存储块等物理介质、诸如硬盘或软盘等磁性介质、以及诸如例如DVD及其数据变体、CD等光学介质上。物理介质是非瞬态介质。
本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种前后端分离的接口请求处理方法,其特征在于,包括以下步骤:
将前端数据层加载在网页上在浏览器端执行;
在所述浏览器端向服务端发起数据请求后,获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内预设所述请求字段和业务字段的映射关系;
在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。
2.根据权利要求1所述的前后端分离的接口请求处理方法,其特征在于,所述前端数据层包括接口处理器、数据模型以及接口转换器,其中,所述请求字段和所述业务字段由所述接口处理器进行传输,所述数据模型内置所述请求字段和所述业务字段的所述映射关系,通过所述接口转换器将所述数据请求携带的每个所述请求字段转换为相应的所述业务字段。
3.根据权利要求1所述的前后端分离的接口请求处理方法,其特征在于,所述方法还包括:
基于所述映射关系,以及所述业务字段与所述业务数据的第一对应关系,获取所述请求字段与所述业务数据的第二对应关系,以使所述浏览器端根据所述第二对应关系将所述业务数据渲染到所述网页上。
4.根据权利要求1所述的前后端分离的接口请求处理方法,其特征在于,所述映射关系包括:前端字段表、每个所述业务字段对应有字段类型、字段名称、默认值。
5.根据权利要求1所述的前后端分离的接口请求处理方法,其特征在于,所述方法还包括:对所述前端数据层中的所述映射关系进行字段修改,所述字段修改包括:增加和/或删除和/或修改至少一个所述请求字段与所述业务字段的映射配置。
6.根据权利要求2所述的前后端分离的接口请求处理方法,其特征在于,所述数据请求包括接口调用请求,所述接口调用请求用于请求调用所述网页中的所述请求字段所对应的目标接口;在每个所述目标接口的接口函数中使用装饰器加载所述数据模型内置的配置方法,并基于所述配置方法得到所述请求字段和所述业务字段的所述映射关系,以使所述目标接口根据所述映射关系进行数据转换。
7.根据权利要求4所述的前后端分离的接口请求处理方法,其特征在于,所述方法还包括:判断所述映射关系中的所述业务字段的所述字段类型与所述服务端所需的所述业务字段的所述字段类型是否一致,当类型不一致时,对所述映射关系中的所述业务字段的所述字段类型做转换,以使所述请求字段根据转换后的所述映射关系转换为所述服务端所需的所述业务字段。
8.一种前后端分离的接口请求处理装置,其特征在于,包括:
加载模块,用于将前端数据层加载在网页上在浏览器端执行;
获取模块,用于在所述浏览器端向服务端发起数据请求后,获取所述数据请求及所述数据请求携带的请求字段,将所述请求字段载入所述前端数据层中,其中,所述前端数据层内预设所述请求字段和业务字段的映射关系;
转换模块,用于在所述前端数据层中通过所述映射关系将所述请求字段转换为所述业务字段,并由所述前端数据层将所述业务字段与所述数据请求发送到所述服务端,以使所述服务端根据所述业务字段返回对应的业务数据。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7任一项所述的前后端分离的接口请求处理方法。
10.一种计算机程序产品,其特征在于,包括软件代码部分,当所述计算机程序产品在计算机上被运行时,所述软件代码部分用于执行根据权利要求1至7任一项所述的前后端分离的接口请求处理方法。
11.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,所述计算机程序包括用于控制过程以执行过程的程序代码,所述过程包括根据权利要求1至7任一项所述的前后端分离的接口请求处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111188519.3A CN113918129A (zh) | 2021-10-12 | 2021-10-12 | 前后端分离的接口请求处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111188519.3A CN113918129A (zh) | 2021-10-12 | 2021-10-12 | 前后端分离的接口请求处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113918129A true CN113918129A (zh) | 2022-01-11 |
Family
ID=79239543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111188519.3A Pending CN113918129A (zh) | 2021-10-12 | 2021-10-12 | 前后端分离的接口请求处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918129A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116319950A (zh) * | 2022-09-07 | 2023-06-23 | 中国人民财产保险股份有限公司 | 架构前后端分离的实现方法、架构系统以及请求处理方法 |
CN117331848A (zh) * | 2023-12-01 | 2024-01-02 | 成都数之联科技股份有限公司 | 一种Web商城的前后端开发交互方法及系统 |
-
2021
- 2021-10-12 CN CN202111188519.3A patent/CN113918129A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116319950A (zh) * | 2022-09-07 | 2023-06-23 | 中国人民财产保险股份有限公司 | 架构前后端分离的实现方法、架构系统以及请求处理方法 |
CN117331848A (zh) * | 2023-12-01 | 2024-01-02 | 成都数之联科技股份有限公司 | 一种Web商城的前后端开发交互方法及系统 |
CN117331848B (zh) * | 2023-12-01 | 2024-02-09 | 成都数之联科技股份有限公司 | 一种Web商城的前后端开发交互方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210124573A1 (en) | Firmware upgrade method and apparatus, and terminal | |
WO2016011883A1 (zh) | 数据资源的获取方法、装置和系统 | |
US20160259800A1 (en) | Webpage loading method, client and server | |
CN113918129A (zh) | 前后端分离的接口请求处理方法和装置 | |
US9282137B2 (en) | Dynamic package creation for predictive page load optimization | |
CN112559927B (zh) | 一种网页加载方法及装置 | |
CN101178717A (zh) | 一种对网页进行适配处理的方法及网页适配装置 | |
CN112256772A (zh) | 数据服务方法、装置以及可读存储介质 | |
CN112187921B (zh) | 一种对象文件下载方法、装置、系统、服务器和存储介质 | |
CN112860308A (zh) | 接口定义的配置方法、业务处理方法、服务器及存储介质 | |
CN107391277A (zh) | 信息处理方法和装置 | |
CN110659165A (zh) | 一种多节点服务器自动化测试方法和装置 | |
CN113190254A (zh) | 一种更新方法及装置 | |
CN110888672B (zh) | 一种基于元数据架构的表达式引擎实现方法及系统 | |
CN112394932A (zh) | 浏览器网页自动换肤方法及装置 | |
CN114238703A (zh) | 事件流程编排方法、装置及应用 | |
WO2019024275A1 (zh) | 一种加载页面的方法、装置及计算机设备 | |
CN104980464A (zh) | 一种网络请求处理方法、网络服务器和网络系统 | |
CN105094787B (zh) | 企业互联网应用的处理方法及装置 | |
US10085128B2 (en) | File download method for mobile device, server and mobile device thereof, and computer-readable medium | |
KR101046446B1 (ko) | 웹페이지 로딩 방법 및 시스템 | |
CN111045747A (zh) | 一种h5移动应用快速加载方法、系统、终端及存储介质 | |
US20110252039A1 (en) | System, apparatus and method for processing content on a computing device | |
CN113656100A (zh) | 接口切换方法、装置、电子装置及计算机程序产品 | |
CN113746932B (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 |