CN116484125A - Mock数据返回方法、装置、计算机设备及存储介质 - Google Patents
Mock数据返回方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN116484125A CN116484125A CN202310571887.9A CN202310571887A CN116484125A CN 116484125 A CN116484125 A CN 116484125A CN 202310571887 A CN202310571887 A CN 202310571887A CN 116484125 A CN116484125 A CN 116484125A
- Authority
- CN
- China
- Prior art keywords
- mock
- data
- request
- target
- result data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 54
- 239000003999 initiator Substances 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 18
- 238000001914 filtration Methods 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 18
- 230000018109 developmental process Effects 0.000 description 17
- 230000006870 function Effects 0.000 description 12
- 238000009877 rendering Methods 0.000 description 11
- 238000011161 development Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000033772 system development Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/08—Insurance
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Computational Linguistics (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种Mock数据返回方法,应用于软件开发技术领域及金融科技领域。本申请提供的方法包括:接收目标接口的请求,其中,所述目标接口的请求包含统一资源定位符;在内存数据库中查询所述统一资源定位符对应的所述目标接口是否被设置为Mock接口类型;若否,则将所述目标接口的请求发送至后端服务集群,所述后端服务集群发送所述目标接口的请求至对应的后端业务组件;若是,则根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据;将所述第一目标Mock结果数据作为请求返回结果数据,或将所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;将所述请求返回结果数据返回至对应的所述目标接口的请求的发起者。
Description
技术领域
本申请涉及软件开发技术领域,尤其涉及一种Mock数据返回方法、装置、计算机设备及存储介质。
背景技术
在传统的软件开发流程中,系统前端开发人员和系统后端开发人员会不定期开展前后端的开发联调,而在软件开发过程中,后端开发人员关注的是业务逻辑的实现,而前端开发人员更加关注的是对前端界面数据的加载和渲染,例如在金融科技平台的开发过程中,后端人员关注的是金融科技平台的各项金融业务的逻辑实现(比如用户能够在金融科技平台完成汽车保险投保、信用卡申请、贷款申请、投资理财等金融业务),前端人员关注的是金融科技平台的各个系统应用前端页面数据的加载和渲染(比如金融科技平台的横幅广告的加载和渲染、用户登录金融科技平台后用户信息的正常加载和渲染等)。同时,随着微服务技术以及前后端分离技术的发展,在整个软件系统开发的迭代过程中,前端开发人员会依赖软件系统后端接口的返回数据。
因此,后端接口返回的Mock数据对于前端的数据渲染至关重要,但是若软件系统的后端开发人员如果需要时刻配合前端开发人员去伪造Mock数据又会产生一定的时间成本和人力成本,例如金融科技平台的汽车保险子系统的后端开发人员在系统开发阶段除了完成基本的开发任务时,还要根据汽车保险业务特点创建大量的汽车保险业务的Mock数据以供汽车保险子系统的前端开发人员进行前端页面调试。同时,传统技术用于伪造Mock数据的方法对Mock数据的管理也过于复杂,导致前端开发人员接收到错误的Mock数据的概率大,反而降低了开发联调的工作效率。
发明内容
本申请实施例提供一种Mock数据返回方法、装置、计算机设备及存储介质,以解决传统Mock数据技术方案导致软件开发成本增加和开发效率降低的问题。
本申请的第一方面,提供一种Mock数据返回方法,包括:
通过网关接收前端工程发送的目标接口的请求,其中,所述目标接口的请求包含唯一性的统一资源定位符;
在预先部署配置的内存数据库中查询所述统一资源定位符对应的所述目标接口是否被设置为Mock接口类型;
若否,则通过所述网关将所述目标接口的请求发送至后端服务集群,以使所述后端服务集群根据集群配置信息发送所述目标接口的请求至对应业务模块的后端业务组件;
若是,则根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据;
将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;
将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者。
本申请的第二方面,提供一种Mock数据返回装置,包括:
接口请求接收模块,用于通过网关接收前端工程发送的目标接口的请求,其中,所述目标接口的请求包含唯一性的统一资源定位符;
接口类型判断模块,用于在预先部署配置的内存数据库中查询所述统一资源定位符对应的所述目标接口是否被设置为Mock接口类型;
请求转发模块,用于若否,则通过所述网关将所述目标接口的请求发送至后端服务集群,以使所述后端服务集群根据集群配置信息发送所述目标接口的请求至对应业务模块的后端业务组件;
内存数据库模块,用于若是,则根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据;
结果数据模块,用于将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;
请求结果返回模块,用于将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者。
本申请的第三方面,提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述Mock数据返回方法的步骤。
本申请的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述Mock数据返回方法的步骤。
上述Mock数据返回方法、装置、计算机设备及存储介质,通过网关接收前端工程发送的目标接口的请求;在预先部署配置的内存数据库中查询对应的所述目标接口是否被设置为Mock接口类型;若否,则通过所述网关将所述目标接口的请求发送至后端服务集群对应业务模块的后端业务组件;若是,则在所述内存数据库中查询对应的第一目标Mock结果数据;将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;将所述请求返回结果数据返回至对应的请求的发起者。不仅降低了Mock数据在软件开发过程中的人力成本和时间成本的占用,而且将前后端的开发进行隔离,进一步降低了前后端的依赖程度,提高了软件开发的开发效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例中Mock数据返回方法的一应用环境示意图;
图2是本申请一实施例中Mock数据返回方法的一流程图;
图3是本申请一实施例中Mock数据返回装置的结构示意图;
图4是本申请一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供的Mock数据返回方法,可应用在如图1的应用环境中,其中,图1中的前端工程、内存数据库和后端服务集群都是部署在计算机设备中,而计算机设备可以但不限于各种个人计算机、笔记本电脑,计算机设备还可以是服务器,服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。可以理解的是图1中的计算机设备的数量仅仅是示意性的,可以根据实际需求进行任意数量的扩展。
在一实施例中,如图2所示,提供一种Mock数据返回方法,以该方法应用在图1中的计算机设备为例进行说明,包括如下步骤S101至S106:
S101、通过网关接收前端工程发送的目标接口的请求,其中,所述目标接口的请求包含唯一性的统一资源定位符。
其中,所述网关(Gateway)又称网间连接器或协议转换器,是一种充当转换任务的计算机系统或设备,在使用不同的通信协议,数据格式或语言,甚至体系结构完全不同的两种系统时,网关是一个翻译器。同时,与网桥只是简单地传送信息不同,网关能对收到的信息进行重新打包,以适应目的系统的需求,而且网关也可以提供过滤和安全功能。例如,在本实施例中的网关能够过滤掉一部分非所述前端工程发送的非法请求,比如金融科技平台的网关能够购率掉一部分非金融科技平台前端页面发送的非法请求(其他网络攻击工具模拟的网络接口请求,比如对金融科技平台的用户信息数据接口的非法访问请求)。
进一步地,所述前端工程是在软件开发技术领域的一种表述方式,而所述目标接口的请求,不仅是可以来自于所述前端工程,还可以是来自其他第三方后端系统。例如,在一科技金融平台的汽车保险子系统中,该汽车保险子系统提供了用户每年汽车保险消费情况查询接口,则对该用户每年汽车保险消费情况查询接口发起接口请求的对象可以是该汽车保险子系统的前端App客户端,还可以是该科技金融平台的其他子系统(比如,信用卡业务子系统,通过查询用户每年的汽车保险情况以判断是否需要降低或提升对应的用户的信用卡额度)。
其中,所述统一资源定位符(Uniform Resource Locator,URL)是因特网(Internet)上标准的资源的地址(Address),也被称为网页地址或统一资源定位器。所述统一资源定位符一般由方式、主机名、地点和文件名四个部分组成固定的统一格式,能够使客户端程序查询不同的信息资源时有统一访问方法。
S102、在预先部署配置的内存数据库中查询所述统一资源定位符对应的所述目标接口是否被设置为Mock接口类型。
进一步地,在一更具体的实施例中,所述目标内存数据库使用Redis进行技术实施。其中,内存数据库(In Memory Database)是一种将全部数据都存放在内存中的数据库,而非传统数据库将数据存储在外部存储器中,内存数据库所有的数据访问也都在内存中进行,常见的内存数据库包括但不限于:Redis、Memcached、SQLite、Oracle TimesTen、ApacheIgnite等。其中,Redis是一个存储键值对的内存数据库,Redis中的数据结构存储系统可以用作数据库、缓存和消息中间件,并且支持丰富的数据结构类型,例如字符串、散列、有序集合等,同时Redis还能进行数据的持久化和备份。在另一更具体的实施例中,使用Redis保存了所有后端接口的接口类型,以及所有后端接口对应的统一资源定位符。
进一步地,所述内存数据库被部署之后,开定时轮询线程查询后端系统是否有新的后端接口产生。若查询到有新的后端接口产生,则获取新的后端接口的接口类型和对应的新的统一资源定位符保存至所述内存数据库。其中,若所述新的统一资源定位符与所述内存数据库中已经存在相同的统一资源定位符,则生成对应的同名预警信息,并发送所述同名预警信息至对应的后台开发人员。
S103、所述目标接口被设置为非Mock接口类型,则通过所述网关将所述目标接口的请求发送至后端服务集群,以使所述后端服务集群根据集群配置信息发送所述目标接口的请求至对应业务模块的后端业务组件。
其中,所述后端服务集群是一起管理并参与工作负载管理的服务器组。集群可以包含节点或单个应用程序服务器。节点通常是具有运行一个或多个应用程序服务器的不同主机IP地址的物理计算机系统。所述后端服务集群和传统的高性能计算机技术相比,集群技术可以利用各档次的服务器作为节点,系统造价低,可以实现很高的运算速度,完成大运算量的计算,具有较高的响应能力,能够满足当今日益增长的信息服务的需求。
其中,所述后端服务集群根据系统的业务需求,部署了对应的各种后端业务模块,而所述各种后端业务模块都是由各种所述后端业务组件组成的。例如,在一科技金融平台的后端服务集群中,部署了汽车保险业务模块、医疗保险业务模块、信用卡业务模块、消费贷款业务模块等后端业务模块,其中的消费贷款业务模块包含了用户信用业务服务组件、用户消费服务组件、用户贷款业务组件、用户分期业务组件等后端业务组件服务。
S104、所述目标接口被设置为Mock接口类型,则根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据。
其中,所述第一目标Mock结果数据是预先被保存在所述内存数据库中的,也是所述目标接口第一次被设置为Mock接口类型时将所述Mock结果数据保存。进一步地,若接收到设置所述目标接口为Mock接口类型的接口类型设置请求时,则同时还需要检查该接口类型设置请求中是否包含所述目标接口对应的所述第一目标Mock结果数据,若不包含,则设置所述目标接口为Mock接口类型失败。进一步地,若所述接口类型设置请求中包含对应的所述第一目标Mock结果数据,则还将所述第一目标Mock结果数据发送至对应的后端服务组件进行数据结构性校验,若所述数据结构性校验失败,则设置所述目标接口为Mock接口类型失败。
进一步地,所述根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据包括:首先,判断所述Mock接口返回Mock结果数据的Mock数据返回方式。若所述Mock数据返回方式为字段属性值方式,则在所述内存数据库中根据所述目标接口的返回字段属性查找对应的字段值。然后,将所述字段值根据所述目标接口的返回数据结构组成所述第一目标Mock结果数据。若所述Mock数据返回方式为JSON数据方式,则从所述内存数据库的Mock JSON数据集合中获取所述目标接口对应的接口返回JSON数据作为所述第一Mock结果数据。例如,在一科技金融平台的汽车保险业务子系统中,用户汽车保险基本信息接口返回的Mock数据类型是字段属性值方式,用户汽车保险消费记录信息接口返回的Mock数据乐行是JSON数据方式。进一步地,在另外一些实施例中,所述目标接口返回的既不是字段属性值方式,也不是JSON数据方式,而是图片、文本等文件方式或其他方式,则所述目标接口返回的是大数据存储中保存对应返回文件的系统文件地址或其他方式对应的网络地址数据格式。又例如,在一金融科技平台的汽车保险业务子系统中,用户出险记录图像信息接口返回的是一组保存在大数据存储中的一组对应的事故现场照片的数据保存地址。
其中,JSON(JavaScript Object Notation,JavaScript对象简谱)是一种轻量级的数据交换格式,基于ECMAScript(European Computer Manufacturers AssociationScript)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得JSON成为理想的数据交换语言,易于开发人员进行阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。其中,在另一更具体的实施例中,采用XML数据格式替换所述JSON数据格式,需要特殊说明的是,JSON数据和XML数据都是后端接口返回的一种数据格式,而本实施例中的JSON数据可以替换成传统技术中任意一种后端接口返回的数据格式,也可以替换成未来后端接口返回的新数据格式。
进一步地,所述若所述Mock数据返回方式为字段属性值方式,则在所述内存数据库中根据所述目标接口的返回字段属性查找对应的字段值,包括:首先,若所述目标接口的请求为第一次接收,则从所述后端业务组件获取所述目标接口的返回数据结构。然后,根据所述返回数据结构在所述内存数据库中获取所述返回数据结构中不同字段属性对应的不同字段属性值。同时,将所述字段值根据所述目标接口的返回数据结构组成所述第一目标Mock结果数据,并存储所述第一目标Mock结果数据和对应的所述统一资源定位符至所述内存数据库。最后,若所述目标接口的请求不为第一次接收,则根据所述目标结构对应的所述统一资源定位符在所述内存数据库中获取所述第一目标Mock结果数据。
S105、将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据。
进一步地,设置后端业务组件的响应时间阈值,若超过所述响应时间阈值,则返回所述目标接口请求失败的所述请求返回结果数据。其中,判定所述响应时间阈值的初始计时时间是从所述内存数据库接收到查询所述目标接口的Mock数据类型时候开始计时。例如,前述的科技金融平台的汽车保险业务子系统的内存数据库接收到一通过用户汽车保险消费信息查询接口查询特定用户去年的汽车保险消费记录的查询请求,则从该汽车保险业务子系统的内存数据库接收到查询该用户汽车报销消费信息查询接口的接口类型时开始计时,直至收到该特定用户去年的汽车保险消费记录,或计时时间超过设定的响应时间阈值。
S106、将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者。
进一步地,在所述请求返回结果数据返回之后,还接收前端工程的Mock数据校验结果,即所述前端工程的相关前端开发人员也对所述Mock数据的正确性进行校验,并将所述Mock数据的校验结果通过所述网关反馈至对应的后端服务集群。例如,前述科技金融平台的汽车保险业务子系统的前端开发人员接收到了后端服务集群返回的Mock结果数据,但在使用该Mock结果数据进行前端页面渲染的过程中发现该Mock结果数据中一字段属性为百分比的字段属性值超过了100%,进而导致了前端页面渲染时发生渲染错误,故所述汽车保险业务子系统的前端开发人员将该Mock结果数据,以及导致的前端渲染错误信息发送至该汽车保险业务子系统的后端服务集群,则该汽车保险业务子系统的后端开发人员在接收到该Mock结果数据和该前端渲染错误信息之后,对所述Mock结果数据进行修改以解决该前端渲染错误。
进一步地,所述将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者之后,还包括:首先,接口所述目标接口的设置请求,其中,所述设置请求通过所述网关进行权限过滤。然后,若所述设置请求为关闭所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为非Mock接口类型。最后,若所述设置请求为开启所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为Mock接口类型。
进一步地,所述将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据之后,还包括:首先,将所述第二Mock返回结果数据保存至所述内存数据库。然后,若接收到开启所述目标接口的Mock标识的设置请求,则将所述第二Mock返回结果数据作为所述目标结果对应的所述第一目标Mock结果数据。
进一步地,所述设置请求还包括是否删除Mock数据标志位,所述若所述设置请求为关闭所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为非Mock接口类型之后,还包括:首先,若所述是否删除Mock数据标志位为True,则在所述内存数据库中将所述目标接口对应的所述第一目标Mock结果数据删除。然后,若所述是否删除Mock数据标志位为False,则在所述内存数据库中将所述目标接口对应的所述第一目标Mock结果数据转移至逻辑删除区。
上述Mock数据返回方法、装置、计算机设备及存储介质,通过网关接收前端工程发送的目标接口的请求;在预先部署配置的内存数据库中查询对应的所述目标接口是否被设置为Mock接口类型;若否,则通过所述网关将所述目标接口的请求发送至后端服务集群对应业务模块的后端业务组件;若是,则在所述内存数据库中查询对应的第一目标Mock结果数据;将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;将所述请求返回结果数据返回至对应的请求的发起者。不仅降低了Mock数据在软件开发过程中的人力成本和时间成本的占用,而且将前后端的开发进行隔离,进一步降低了前后端的依赖程度,提高了软件开发的开发效率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在一实施例中,提供一种Mock数据返回装置100,该Mock数据返回装置100与上述实施例中Mock数据返回方法一一对应。如图4所示,该Mock数据返回装置100包括接口请求接收模块11、接口类型判断模块12、请求转发模块13、内存数据库模块14、结果数据模块15和请求结果返回模块16。各功能模块详细说明如下:
接口请求接收模块11,用于通过网关接收前端工程发送的目标接口的请求,其中,所述目标接口的请求包含唯一性的统一资源定位符;
接口类型判断模块12,用于在预先部署配置的内存数据库中查询所述统一资源定位符对应的所述目标接口是否被设置为Mock接口类型;
请求转发模块13,用于若所述目标接口被设置为非Mock接口类型,则通过所述网关将所述目标接口的请求发送至后端服务集群,以使所述后端服务集群根据集群配置信息发送所述目标接口的请求至对应业务模块的后端业务组件;
内存数据库模块14,用于若所述目标接口被设置为Mock接口类型,则根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据;
结果数据模块15,用于将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;
请求结果返回模块16,用于将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者。
进一步地,所述内存数据库模块14还包括:
返回方式判断子模块,用于判断所述Mock接口返回Mock结果数据的Mock数据返回方式;
第一字段值获取子模块,用于若所述Mock数据返回方式为字段属性值方式,则在所述内存数据库中根据所述目标接口的返回字段属性查找对应的字段值;
第一数据结构组成子模块,用于将所述字段值根据所述目标接口的返回数据结构组成所述第一目标Mock结果数据;
第一JSON数据获取子模块,用于若所述Mock数据返回方式为JSON数据方式,则从所述内存数据库的Mock JSON数据集合中获取所述目标接口对应的接口返回JSON数据作为所述第一Mock结果数据。
进一步地,所述请求结果返回模块16还包括:
网关权限过滤子模块,用于接口所述目标接口的设置请求,其中,所述设置请求通过所述网关进行权限过滤;
第一接口类型设置子模块,用于若所述设置请求为关闭所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为非Mock接口类型;
第二接口类型设置子模块,用于若所述设置请求为开启所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为Mock接口类型。
进一步地,所述结果数据模块15还包括:
第一数据保存子模块,用于将所述第二Mock返回结果数据保存至所述内存数据库;
结果数据设置子模块,用于若接收到开启所述目标接口的Mock标识的设置请求,则将所述第二Mock返回结果数据作为所述目标结果对应的所述第一目标Mock结果数据。
进一步地,所述第一接口类型设置子模块还包括:
第一结果数据删除子单元,用于若所述是否删除Mock数据标志位为True,则在所述内存数据库中将所述目标接口对应的所述第一目标Mock结果数据删除;
第二结果数据删除子单元,用于若所述是否删除Mock数据标志位为False,则在所述内存数据库中将所述目标接口对应的所述第一目标Mock结果数据转移至逻辑删除区。
进一步地,所述第一字段值获取子模块还包括:
第一接口返回数据子单元,用于若所述目标接口的请求为第一次接收,则从所述后端业务组件获取所述目标接口的返回数据结构;
属性值获取子单元,用于根据所述返回数据结构在所述内存数据库中获取所述返回数据结构中不同字段属性对应的不同字段属性值;
结果数据保存子单元,用于将所述字段值根据所述目标接口的返回数据结构组成所述第一目标Mock结果数据,并存储所述第一目标Mock结果数据和对应的所述统一资源定位符至所述内存数据库;
第二接口返回数据子单元,用于若所述目标接口的请求不为第一次接收,则根据所述目标结构对应的所述统一资源定位符在所述内存数据库中获取所述第一目标Mock结果数据。
其中上述模块/单元中的“第一”和“第二”的意义仅在于将不同的模块/单元加以区分,并不用于限定哪个模块/单元的优先级更高或者其它的限定意义。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本申请中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式。
关于Mock数据返回装置的具体限定可以参见上文中对于Mock数据返回方法的限定,在此不再赘述。上述Mock数据返回装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储Mock数据返回方法中涉及到的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种Mock数据返回方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中Mock数据返回方法的步骤,例如图2所示的步骤S101至步骤S106及该方法的其它扩展和相关步骤的延伸。或者,处理器执行计算机程序时实现上述实施例中Mock数据返回装置的各模块/单元的功能,例如图3所示模块11至模块16的功能。为避免重复,这里不再赘述。
所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述计算机装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、视频数据等)等。
所述存储器可以集成在所述处理器中,也可以与所述处理器分开设置。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中Mock数据返回方法的步骤,例如图2所示的步骤S101至步骤S106及该方法的其它扩展和相关步骤的延伸。或者,计算机程序被处理器执行时实现上述实施例中Mock数据返回装置的各模块/单元的功能,例如图3所示模块11至模块16的功能。为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种Mock数据返回方法,其特征在于,包括:
通过网关接收前端工程发送的目标接口的请求,其中,所述目标接口的请求包含唯一性的统一资源定位符;
在预先部署配置的内存数据库中查询所述统一资源定位符对应的所述目标接口是否被设置为Mock接口类型;
若否,则通过所述网关将所述目标接口的请求发送至后端服务集群,以使所述后端服务集群根据集群配置信息发送所述目标接口的请求至对应业务模块的后端业务组件;
若是,则根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据;
将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;
将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者。
2.根据权利要求1所述的Mock数据返回方法,其特征在于,所述根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据包括:
判断所述Mock接口返回Mock结果数据的Mock数据返回方式;
若所述Mock数据返回方式为字段属性值方式,则在所述内存数据库中根据所述目标接口的返回字段属性查找对应的字段值;
将所述字段值根据所述目标接口的返回数据结构组成所述第一目标Mock结果数据;
若所述Mock数据返回方式为JSON数据方式,则从所述内存数据库的Mock JSON数据集合中获取所述目标接口对应的接口返回JSON数据作为所述第一Mock结果数据。
3.根据权利要求1所述的Mock数据返回方法,其特征在于,所述将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者之后,还包括:
接口所述目标接口的设置请求,其中,所述设置请求通过所述网关进行权限过滤;
若所述设置请求为关闭所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为非Mock接口类型;
若所述设置请求为开启所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为Mock接口类型。
4.根据权利要求3所述的Mock数据返回方法,其特征在于,所述将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据之后,还包括:
将所述第二Mock返回结果数据保存至所述内存数据库;
若接收到开启所述目标接口的Mock标识的设置请求,则将所述第二Mock返回结果数据作为所述目标结果对应的所述第一目标Mock结果数据。
5.根据权利要求3所述的Mock数据返回方法,其特征在于,所述设置请求还包括是否删除Mock数据标志位,所述若所述设置请求为关闭所述目标接口的Mock标识,则在所述内存数据库中将所述目标接口设置为非Mock接口类型之后,还包括:
若所述是否删除Mock数据标志位为True,则在所述内存数据库中将所述目标接口对应的所述第一目标Mock结果数据删除;
若所述是否删除Mock数据标志位为False,则在所述内存数据库中将所述目标接口对应的所述第一目标Mock结果数据转移至逻辑删除区。
6.根据权利要求2所述的Mock数据返回方法,其特征在于,所述若所述Mock数据返回方式为字段属性值方式,则在所述内存数据库中根据所述目标接口的返回字段属性查找对应的字段值,包括:
若所述目标接口的请求为第一次接收,则从所述后端业务组件获取所述目标接口的返回数据结构;
根据所述返回数据结构在所述内存数据库中获取所述返回数据结构中不同字段属性对应的不同字段属性值;
将所述字段值根据所述目标接口的返回数据结构组成所述第一目标Mock结果数据,并存储所述第一目标Mock结果数据和对应的所述统一资源定位符至所述内存数据库;
若所述目标接口的请求不为第一次接收,则根据所述目标结构对应的所述统一资源定位符在所述内存数据库中获取所述第一目标Mock结果数据。
7.一种Mock数据返回装置,其特征在于,包括:
接口请求接收模块,用于通过网关接收前端工程发送的目标接口的请求,其中,所述目标接口的请求包含唯一性的统一资源定位符;
接口类型判断模块,用于在预先部署配置的内存数据库中查询所述统一资源定位符对应的所述目标接口是否被设置为Mock接口类型;
请求转发模块,用于若否,则通过所述网关将所述目标接口的请求发送至后端服务集群,以使所述后端服务集群根据集群配置信息发送所述目标接口的请求至对应业务模块的后端业务组件;
内存数据库模块,用于若是,则根据所述统一资源定位符在所述内存数据库中查询对应的第一目标Mock结果数据;
结果数据模块,用于将所述第一目标Mock结果数据作为请求返回结果数据,或将接收所述后端业务组件返回的第二Mock返回结果数据作为所述请求返回结果数据;
请求结果返回模块,用于将所述请求返回结果数据通过所述网关返回至对应的所述目标接口的请求的发起者。
8.根据权利要求7所述的Mock数据返回装置,其特征在于,所述内存数据库模块还包括:
返回方式判断子模块,用于判断所述Mock接口返回Mock结果数据的Mock数据返回方式;
第一字段值获取子模块,用于若所述Mock数据返回方式为字段属性值方式,则在所述内存数据库中根据所述目标接口的返回字段属性查找对应的字段值;
第一数据结构组成子模块,用于将所述字段值根据所述目标接口的返回数据结构组成所述第一目标Mock结果数据;
第一JSON数据获取子模块,用于若所述Mock数据返回方式为JSON数据方式,则从所述内存数据库的Mock JSON数据集合中获取所述目标接口对应的接口返回JSON数据作为所述第一Mock结果数据。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述Mock数据返回方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6中任一项所述Mock数据返回方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310571887.9A CN116484125A (zh) | 2023-05-19 | 2023-05-19 | Mock数据返回方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310571887.9A CN116484125A (zh) | 2023-05-19 | 2023-05-19 | Mock数据返回方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116484125A true CN116484125A (zh) | 2023-07-25 |
Family
ID=87223334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310571887.9A Pending CN116484125A (zh) | 2023-05-19 | 2023-05-19 | Mock数据返回方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116484125A (zh) |
-
2023
- 2023-05-19 CN CN202310571887.9A patent/CN116484125A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114172966B (zh) | 单元化架构下的服务调用方法、服务处理方法及装置 | |
US10795882B2 (en) | Blockchain-based data compression and searching | |
WO2019076014A1 (zh) | 网页生成方法、装置、终端设备及介质 | |
CN109040263B (zh) | 基于分布式系统的业务处理方法及装置 | |
CN113315750B (zh) | 一种Kafka消息发布方法、装置及存储介质 | |
CN112738294B (zh) | 基于区块链的域名解析方法、装置、电子设备和存储介质 | |
CN110389765A (zh) | 一种参数校验方法和参数校验系统 | |
CN113010549A (zh) | 基于异地多活系统的数据处理方法、相关设备及存储介质 | |
CN111694639A (zh) | 进程容器地址的更新方法、装置和电子设备 | |
CN109656670B (zh) | 一种页面渲染方法及装置 | |
CN112835885A (zh) | 一种分布式表格存储的处理方法、装置及系统 | |
CN108228248A (zh) | 一种依赖关系的确定方法和装置 | |
CN111327680B (zh) | 认证数据同步方法、装置、系统、计算机设备和存储介质 | |
CN117874061A (zh) | 一种基于集群实现远程存储的系统及方法 | |
CN111125168B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN111800511A (zh) | 同步登录态的处理方法、系统、设备及可读存储介质 | |
CN111767053A (zh) | 一种前端页面数据获取方法及装置 | |
CN115098528B (zh) | 业务处理方法、装置、电子设备及计算机可读存储介质 | |
CN116484125A (zh) | Mock数据返回方法、装置、计算机设备及存储介质 | |
CN113282347B (zh) | 插件运行方法、装置、设备及存储介质 | |
US11656972B1 (en) | Paginating results obtained from separate programmatic interfaces | |
US11663058B1 (en) | Preemptive filtering of events of an event bus with a deterministic filter | |
CN113032820B (zh) | 文件存储方法、访问方法、装置、设备及存储介质 | |
CN111737223A (zh) | 一种文件拷贝方法、装置、设备及存储介质 | |
CN115695521B (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 |