logo好方法网

基于应用程序接口网关的前后端分离方法及相关设备


技术摘要:
本发明涉及基于应用程序接口网关的前后端分离方法及相关设备。所述方法包括:从多租户配置中心拉取前端发布的虚拟目录及静态资源压缩包,下载静态资源压缩包并解压到网关设备的本地以对网关设备进行初始化;接收前端向网关设备发送的请求静态资源的第一访问请求,根据  全部
背景技术:
目前,前后端单体架构的前端页面和后端服务放在同一个Java应用中,也就是前 端静态页面以resource目录的形式打包在JAR包中。该方式维护较困难,前端项目有更改, 必须重新打包JAR包。此外,前后端项目开发人员必须在同一代码库进行协作开发,前后端 逻辑耦合在一起,使得前后端部署维护较困难,且版本难于管理。
技术实现要素:
鉴于以上内容,有必要提出一种基于应用程序接口网关的前后端分离方法、装置 及网关设备以解决前后端的开发成本消耗过大,前后端部署维护较困难及难以管理的问 题。 本申请的第一方面提供一种基于应用程序接口网关的前后端分离方法,应用在网 关设备中,所述方法包括: 从与所述网关设备通信连接的多租户配置中心获取网关设备前端发布的虚拟目 录及静态资源压缩包,下载所述静态资源压缩包并解压到所述网关设备的本地以对所述网 关设备进行初始化; 接收所述前端的浏览器向初始化后的所述网关设备发送的请求静态资源的第一 访问请求,根据所述第一访问请求的路径匹配所述前端的虚拟目录的路径,并在所述第一 访问请求的路径与所述前端的虚拟目录的路径相匹配时将所述第一访问请求发送到所述 前端的虚拟目录,根据所述第一访问请求查找所述前端的虚拟目录,并返回所述前端的页 面及静态文件内容给所述前端的浏览器;及 接收所述前端向初始化后的所述网关设备发送的请求动态资源的第二访问请求, 根据所述第二访问请求触发调用后端API的请求,通过所述网关设备将调用的后端API的请 求转发到后端的微服务以获取所述动态资源,并通过所述网关设备将所述动态资源返回给 所述前端。 优选地,在从与所述网关设备通信连接的多租户配置中心获取前端发布的虚拟目 录及静态资源压缩包之前,所述方法还包括: 在所述网关设备配置的PG数据库中存储前端的虚拟目录以及静态资源压缩包,其 中所述虚拟目录存储所述前端的项目文件及所述项目文件的压缩文件。 优选地,在所述网关设备配置的PG数据库中存储前端的虚拟目录以及静态资源压 缩包之后,所述方法还包括: 从与所述网关设备通信连接的多租户配置中心获取所述网关设备的配置数据,从 所述网关设备配置管理的Restful  APIs中确定一目标API,通过所述目标API对所述网关设 4 CN 111580854 A 说 明 书 2/11 页 备的配置数据进行查询和修改,并将修改后的所述配置数据存储到所述PG数据库中。 优选地,在所述网关设备配置的PG数据库中存储前端的虚拟目录以及静态资源压 缩包之后,所述方法还包括: 接收由管理控制平台Portal提供的管理界面对所述网关设备进行配置管理的操 作,其中,所述管理控制台Portal对所述网关设备进行配置管理的操作包括发布所述前端 的内容,管理所述前端与所述后端之间的入口流量的路由转发配置。 优选地,所述从与所述网关设备通信连接的多租户配置中心获取网关设备前端发 布的虚拟目录及静态资源压缩包包括: 通过云平台的KONG-PORTAL-ADMIN服务功能在数据库中插入用户对所述虚拟目录 或所述前端静态资源压缩包进行发布修改的通知事件;及 监测所述通知事件并在监测出所述通知事件时从所述多租户配置中心中获取最 新的虚拟目录及静态资源压缩包,并更新到本地。 优选地,所述网关设备的配置数据包括所述前端的灰度策略,所述方法还包括: 通过5000端口监听从5000端口进来的第一访问请求; 根据所述灰度策略,对所述5000端口进来的第一访问请求进行拦截并判断所述第 一访问请求是否满足所述灰度策略的要求;当所述第一访问请求满足所述灰度策略的要求 时,针对所述第一访问请求的路径匹配对应的虚拟目录路径,将所述第一访问请求发送到 对应的虚拟目录,根据所述第一访问请求查找所述虚拟目录,并返回所述前端的页面及静 态文件内容给所述前端的浏览器。 优选地,所述方法还包括: 判断所述前端的浏览器发送的第二访问请求是否是请求访问所述前端的超链接 请求,将所述第二访问请求分成超链接请求和非超链接请求,其中,所述超链接请求是指 http请求是由一个与http请求对应的html界面超链接而产生,非超链接请求不与任何html 界面存在超链接关系; 如果确定所述第二访问请求为超链接请求,则对超链接请求的地址进行重定向, 并将重定向的地址返回给前端的浏览器以使浏览器生成新的访问请求; 接收所述前端的浏览器发送的新的访问请求,并将新的访问请求网关设备转发至 对应的后端的微服务; 接收所述后端返回的与新的访问请求对应的访问响应,并网关设备将访问响应返 回至所述前端的浏览器。 优选地,所述接收所述前端的浏览器向初始化后的所述网关设备发送的请求静态 资源的第一访问请求之后,还包括: 当所述第一访问请求的路径与所述前端的虚拟目录的路径不相匹配时,返回错误 信息给所述前端。 申请的第二方面提供一种基于应用程序接口网关的前后端分离装置,所述装置包 括: 初始化模块,用于从与所述网关设备通信连接的多租户配置中心获取所述网关设 备的配置信息、前端发布的虚拟目录及静态资源压缩包,下载所述静态资源压缩包并解压 到所述网关设备的本地以对所述网关设备进行初始化; 5 CN 111580854 A 说 明 书 3/11 页 第一访问模块,用于接收所述前端的浏览器向初始化后的所述网关设备发送的请 求静态资源的第一访问请求,根据所述第一访问请求的路径匹配所述前端的虚拟目录的路 径,并在所述第一访问请求的路径与所述前端的虚拟目录的路径相匹配时将所述第一访问 请求发送到所述前端的虚拟目录,根据所述第一访问请求查找所述前端的虚拟目录,并返 回所述前端的页面及静态文件内容给所述前端的浏览器;及 第二访问模块,用于接收所述前端向初始化后的所述网关设备发送的请求动态资 源的第二访问请求,根据所述第二访问请求触发调用后端API的请求,通过所述网关设备将 调用的后端API的请求转发到后端的微服务以获取所述动态资源,并通过所述网关设备将 所述动态资源返回给所述前端。 本申请的第三方面提供一种网关设备,所述网关设备包括处理器,所述处理器用 于执行存储器中存储的计算机程序时实现所述基于应用程序接口网关的前后端分离方法。 本发明中,与所述多租户配置中心相连接的网关设备支持多租户访问所述PG数据 库,并通过多租户配置中心获取前端的虚拟目录以及静态资源压缩包,如此,避免用户单独 申请PG数据库,造成资源浪费及前后端的开发成本消耗过大的问题。此外,本发明中,所述 网关设备可作为静态资源的服务器对静态资源压缩包的自动下载,解压,以及路由匹配,因 此,不需要另外再购买及部署静态资源服务器,也不需要用户手动部署前端的静态资源代 码,节省了手动部署静态资源的流程,解决了前后端部署维护困难及难以管理的问题。 附图说明 图1是本发明一实施方式中基于应用程序接口网关的前后端分离方法的流程图。 图2是本发明一实施方式中基于应用程序接口网关的前后端分离方法的应用环境 示意图。 图3是本发明一实施方式中基于应用程序接口网关的前后端分离装置的示意图。 图4是本发明一实施方式中网关设备的示意图。
下载此资料需消耗2积分,
分享到:
收藏