WO2021056594A1 - 编排前端应用程序的方法、装置、电子设备、介质和程序产品 - Google Patents
编排前端应用程序的方法、装置、电子设备、介质和程序产品 Download PDFInfo
- Publication number
- WO2021056594A1 WO2021056594A1 PCT/CN2019/109249 CN2019109249W WO2021056594A1 WO 2021056594 A1 WO2021056594 A1 WO 2021056594A1 CN 2019109249 W CN2019109249 W CN 2019109249W WO 2021056594 A1 WO2021056594 A1 WO 2021056594A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- sub
- page
- end application
- metadata
- pages
- Prior art date
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
Definitions
- the present disclosure generally relates to the field of network technology, and more specifically, to methods, devices, electronic devices, media, and program products for orchestrating front-end application programs.
- Microservices are currently the mainstream method of scalable system architecture. When implementing a microservice architecture, keeping services small, independent, and reusable is a good practice for building comprehensive applications. This also applies to the front-end application architecture. The situation becomes complicated when microservices need to be used as building blocks for front-end solutions. How to use dozens, and sometimes hundreds of microservices to build a unified website or mobile application is a problem.
- the present disclosure proposes a solution for arranging front-end applications using subpages from different front-end applications, thereby constructing a micro front-end architecture.
- a method for orchestrating a front-end application includes: reading and parsing a pre-stored orchestration file, and determining all subpages to be referenced by the front-end application to be edited; for each subpage, according to the The layout file determines the metadata of the subpage; and arranges the front-end application based on all the determined subpages.
- the method before reading and parsing the pre-stored arrangement file, the method further includes: parsing the route of an existing front-end application to extract the information of each existing front-end application.
- the metadata of the subpage is stored as registration information.
- the layout file defines at least one sub-page to be referenced by the front-end application and metadata of each sub-page.
- the metadata of each subpage defined in the layout file is determined based on the stored registration information.
- determining the metadata of the subpage according to the layout file at least includes: determining the name of the subpage and the route of the subpage according to the layout file.
- determining the metadata of the sub-page according to the layout file further includes at least one of the following operations: determining the value of the configuration parameter of the sub-page according to the layout file; and The subpage generates authentication and authentication information.
- arranging the front-end application based on all the determined sub-pages includes: generating a homepage of the front-end application based on a pre-stored application template or a user-defined application template The frame of the face; fill all the determined sub-pages into the content area of the frame, and add the route of each sub-page to the navigation panel of the frame; and call the compiler pair corresponding to each sub-page The page is compiled to generate the front-end application package to be deployed.
- a corresponding compiler is used to compile each subpage of the one or more subpages separately, or compile for the multiple subpages together .
- arranging the front-end application based on all the determined sub-pages further includes: generating global authentication and authentication of the front-end application. ⁇ Right information.
- the method further includes: deploying the front-end application package to be deployed into an application container or into a mobile application store.
- an apparatus for orchestrating a front-end application including: a subpage determining unit configured to read and parse a pre-stored orchestration file, and determine all sub-pages to be referenced by the front-end application to be orchestrated. Page; a metadata determining unit configured to determine the metadata of the sub-page according to the layout file for each sub-page; and a layout unit configured to layout the front end based on all the determined sub-pages application.
- the device further includes: an initialization unit configured to parse the route of an existing front-end application to extract metadata of each sub-page of the existing front-end application , And store it as registration information.
- an initialization unit configured to parse the route of an existing front-end application to extract metadata of each sub-page of the existing front-end application , And store it as registration information.
- the layout file defines at least one sub-page to be referenced by the front-end application and metadata of each sub-page, wherein the layout file defines the sub-page of each sub-page Metadata is determined based on the stored registration information.
- the metadata determining unit is further configured to determine the name of the subpage and the route of the subpage according to the layout file.
- the metadata determining unit is further configured to perform at least one of the following operations: determining the value of the configuration parameter of the subpage according to the layout file; and generating for the subpage Authentication and certification information.
- the orchestration unit is further configured to: generate a frame of the main page of the front-end application based on a pre-stored application template or a user-defined application template; Fill all sub-pages of the sub-pages into the content area of the frame, and add the route of each sub-page to the navigation panel of the frame; and call the compiler corresponding to each sub-page to compile the sub-pages to generate The deployed front-end application package.
- a corresponding compiler is used to compile each subpage of the one or more subpages separately, or compile for the multiple subpages together .
- the orchestration unit is further configured to generate global authentication and authentication information of the front-end application.
- the apparatus further includes: a deployment unit configured to deploy the front-end application package to be deployed into an application container or into a mobile application store.
- an electronic device including: at least one processor; and a memory coupled with the at least one processor, the memory is used to store instructions, when the instructions are used by the at least one When the processor executes, the processor is caused to execute the method as described above.
- a non-transitory machine-readable storage medium which stores executable instructions that, when executed, cause the machine to perform the method as described above.
- a computer program including computer-executable instructions that, when executed, cause at least one processor to perform the method as described above.
- a computer program product that is tangibly stored on a computer-readable medium and includes computer-executable instructions that, when executed, cause at least A processor executes the method described above.
- a solution is provided that uses sub-pages from different front-end applications to arrange front-end applications, thereby constructing a micro front-end architecture.
- Both the front-end applications developed in traditional languages in the past and the new front-end applications based on new languages can be used to build a composite front-end application.
- the front-end application built in this way is easy to manage and deploy, and can save development costs.
- the front-end application program compiled according to the method and device of the present disclosure is independent of the platform, and therefore can be widely run on different types of front-end browsers.
- Figure 1 shows a schematic diagram of the application page frame
- Fig. 2 is a flowchart showing an exemplary process of a method for orchestrating a front-end application according to an embodiment of the present disclosure
- FIG. 3 is a flowchart showing an exemplary process of the operation in block S206;
- FIG. 4 is a block diagram showing an exemplary configuration of an apparatus for orchestrating a front-end application program according to an embodiment of the present disclosure
- FIG. 5 is a block diagram showing an exemplary configuration of a front-end application programming system according to an embodiment of the present disclosure.
- Fig. 6 shows a block diagram of an electronic device for composing a front-end application according to an embodiment of the present disclosure.
- S201, S202, S204, S206, S208, S2062, 200 the method of orchestrating front-end applications
- Sub-page determination unit 404 Metadata determination unit
- Deployment unit 500 Front-end application programming system
- Compiler 509 Application container
- 602 Processor 604: Memory
- the term “including” and its variations mean open terms, meaning “including but not limited to.”
- the term “based on” means “based at least in part on.”
- the terms “one embodiment” and “an embodiment” mean “at least one embodiment.”
- the term “another embodiment” means “at least one other embodiment.”
- the terms “first”, “second”, etc. may refer to different or the same objects. Other definitions can be included below, whether explicit or implicit. Unless clearly indicated in the context, the definition of a term is consistent throughout the specification.
- the present disclosure proposes a solution for constructing a micro front-end system by arranging pages from different front-end applications. Define the layout language for grouped pages. These grouped pages divide the application into logical units for easy management and deployment. By interpreting and parsing the orchestration file, an application grouping model can be generated and compiled into a deployable front-end application, which can then be deployed to a network container.
- the microservice architecture is a method of developing a single application into a set of small services. Each small service runs in its own process and communicates with a lightweight mechanism, usually an HTTP resource application program interface. These services are built around business capabilities through fully automated deployment machines and can be deployed independently.
- Orchestration refers to the automated configuration, coordination, and management of computer systems and software.
- Front-end network development is the operation of converting data into a graphical interface. Users can view and interact with data through digital interaction using HTML, CSS, and JavaScript.
- Micro front end is an architecture similar to micro service. It applies the concept of micro service to the browser side, transforming web applications from a single purpose application to multiple small front end applications. Each front-end application can be run, developed, and deployed independently.
- FIG. 1 shows a schematic diagram of a current front-end application page framework 100.
- the front-end framework defines the skeleton of the page.
- the box 102 is the page title (header).
- the box 104 is the content area, and each root component will be filled in the content area, and this part of the content will be visualized as a sub-page.
- the box 106 is a navigation panel, and the navigation panel can control the routing between sub-pages.
- the present disclosure proposes a solution for constructing a micro front-end architecture by using sub-pages from different front-end applications to arrange front-end applications.
- FIG. 2 is a flowchart showing an exemplary process of a method 200 for orchestrating a front-end application program according to an embodiment of the present disclosure.
- the layout file is pre-written for the needs of each front-end application to be layout, and the layout file defines the sub-pages referenced by one or more front-end applications.
- the orchestration file can also define authentication and certification information, rendering templates, etc. of the front-end application.
- the layout file also defines the metadata of the sub-page, which can specifically include the sub-page name, sub-page type, path, configuration parameters, and authentication and authentication information of the sub-page.
- arrangement language of an arrangement file is not limited to the YAML language, and other formats, such as Json language, XML language, etc., can also be used.
- front-end application For the front-end application "app1”, it includes its description, host, URL, and definitions of multiple subpages. For the sub-page "PageA2”, the sub-page name, type, routing, parameters, authentication information, etc. are included.
- the initialization operation in S201 may be performed first.
- the metadata of the sub-pages of each existing front-end application is extracted by reading and parsing the routes of multiple front-end applications that have been developed, and stored as registration information.
- the extracted metadata of each sub-page of the existing front-end application can be stored as registration information. For example, it can be stored in a database.
- the metadata of related subpages can be directly queried in the database without performing the operation in block S201 every time.
- the extracted metadata may also be stored in other ways such as storage in a storage medium, and the storage method of the metadata is not limited in the method according to the present disclosure.
- the metadata of the sub-pages defined in the layout file can be determined.
- the metadata of the sub-page is determined according to the layout file.
- the name of a subpage and the route of the subpage can be determined according to the layout file.
- the subpage can be used to arrange the front-end application.
- the value of the configuration parameter of the sub-page can also be determined according to the layout file and/or authentication and authentication information can be generated for each sub-page.
- the operation in block S106 may be performed to arrange the front-end application based on all the determined sub-pages.
- FIG. 3 is a flowchart showing an exemplary process of the operation in block S206. As shown in FIG. 3, the operations in block S206 may include the following operations.
- the frame of the main page of the front-end application may be generated based on a pre-stored application template or a user-defined application template.
- the application template may include, for example, HTML DOM (Document Object Model) elements, placeholders, HTML styles, and the like.
- HTML DOM Document Object Model
- block S2064 fill all the determined sub-pages into the content area of the generated frame, and add the route of each sub-page to the navigation panel of the frame.
- the compiler corresponding to each sub-page is called to compile the sub-pages to generate the front-end application package to be deployed. It can be understood that for sub-pages from different existing applications, their corresponding different compilers are used to compile; and for one or more sub-pages belonging to the same existing application, the corresponding compiler can be used for the Each of the one or more sub-pages is compiled separately, or it can be compiled together for the multiple sub-pages.
- the operation in S2066 may also be performed: generating the global authentication and authentication information of the arranged front-end application program.
- the method 200 may also include the operations in S208.
- the generated front-end application package to be deployed may be deployed to the application container to obtain the web front-end application; or the front-end application package may be deployed to In the mobile application store, the front-end application of the mobile client can be obtained.
- a solution is provided that uses subpages from different front-end applications to arrange front-end applications, thereby constructing a micro front-end architecture.
- the front-end applications developed in traditional languages in the past and the front-end applications developed recently based on new languages can be used to build a composite front-end application.
- the front-end application built in this way is easy to manage and deploy, and can save development costs.
- front-end application program compiled according to the method of the present disclosure is independent of the platform, and therefore can be widely run on different types of front-end browsers.
- FIG. 4 is a block diagram showing an exemplary configuration of an apparatus 500 for orchestrating a front-end application program according to an embodiment of the present disclosure.
- the apparatus 400 for organizing a front-end application program includes a sub-page determining unit 402, a metadata determining unit 404, and an orchestrating unit 406.
- the sub-page determination unit 402 is configured to read and parse the pre-stored layout file, and determine all the sub-pages to be referenced by the front-end application to be layout.
- the metadata determining unit 404 is configured to, for each sub-page, determine the metadata of the sub-page according to the layout file.
- the layout unit 406 is configured to layout the front-end application based on all the determined sub-pages.
- the apparatus 400 may further include an initialization unit 401 configured to parse the routing of the existing front-end application to extract the metadata of each sub-page of the existing front-end application, and store it as registration information .
- an initialization unit 401 configured to parse the routing of the existing front-end application to extract the metadata of each sub-page of the existing front-end application, and store it as registration information .
- the layout file defines the sub-pages referenced by at least one front-end application and the metadata of each sub-page, wherein the metadata of each sub-page defined in the layout file is based on the stored metadata. Registration information is determined.
- the metadata determining unit 404 is further configured to determine the name of the sub-page and the route of the sub-page according to the layout file.
- the metadata determining unit 404 is further configured to perform at least one of the following operations:
- the orchestration unit 406 is further configured to:
- the compiler corresponding to each sub-page is called to compile the sub-pages to generate the front-end application package to be deployed.
- the orchestration unit 406 is further configured to:
- the apparatus 400 for orchestrating front-end applications may further include a deployment unit 408 configured to deploy the to-be-deployed front-end application package into an application container or into a mobile application store.
- the details of the operations and functions of the various parts of the apparatus 400 for orchestrating a front-end application program may, for example, be the same or similar to the relevant parts of the embodiment of the method for orchestrating a front-end application program of the present disclosure described with reference to FIGS. 1-3, and will not be detailed here. description.
- the structure of the device 400 for composing front-end application programs and its constituent units shown in FIG. 4 is only exemplary, and those skilled in the art can modify the structure block diagram shown in FIG. 4 as needed.
- FIG. 5 shows a schematic diagram of a specific example of a front-end application orchestration system 500 that uses the method for orchestrating a front-end application according to the present disclosure to orchestrate front-end applications.
- the specific operation process of the front-end application programming system 500 will be described in detail below with reference to FIG. 5.
- Blocks 501, 502, and 503 in FIG. 5 are all existing developed front-end applications, where the front-end application 501 includes sub-pages A1, A2...An, etc., and the front-end application 502 includes sub-pages B1, B2...Bn, etc., the front-end application 503 includes sub-pages C1, C2...Cn, etc.
- the registration center 504 may be a database in which metadata of all sub-pages is stored as registration information.
- the registration center 504 may provide an interface for other modules to extract the data of the sub-pages therein.
- the arranger module 505 reads and parses the arrangement file 506, determines all the subpages to be referenced by the front-end application to be arranged, and obtains the metadata of each subpage from the registry 504. Specifically, the name of the subpage, the route of the subpage, the value of the configuration parameter of the subpage, and the generation of authentication and authentication information for the subpage can be determined.
- these sub-pages can be used to organize the front-end application that you want to organize.
- the arranger module 505 can obtain templates from the layout module 507, and the layout module 507 can define many user-customized user interface templates. These templates have unique names and can be referenced in the layout file. Each template can include HTML DOM (Document Object Model) elements, placeholders, HTML styles, etc.
- the composer module 505 can load a template, and then generate a visual application framework of the main page based on the template. Then, all the determined sub-pages can be filled into the content area of the frame, and the route of each sub-page can be added to the navigation panel of the frame.
- the generated front-end application can be globally authenticated and authenticated according to the authentication and authentication information in the identification and access management (IAM) module 508.
- IAM identification and access management
- the orchestrator module 605 can call the respective compilers 5014, 5024, and 5034 of each existing front-end application 501, 502, and 503 to compile the corresponding sub-pages to generate a deployable front-end application package.
- the orchestrator module 505 can deploy the front-end application package into the application container 509.
- front-end applications 5091, 5092...509m are deployed.
- the arranged front-end application 5091 as an example, it can be seen that it includes sub-pages A2, C3...Bn, etc. from different existing front-end applications 501, 503, and 502.
- system can also include a local storage 511, which can provide a mechanism for sharing data between sub-pages.
- FIGS. 1 to 5 the method and device for orchestrating front-end applications according to the embodiments of the present disclosure and the embodiments of the front-end application orchestrating system are described.
- the above-mentioned apparatus for composing front-end application programs can be implemented by hardware, or by software or a combination of hardware and software.
- FIG. 6 shows a block diagram of an electronic device 600 that implements front-end application programming according to an embodiment of the present disclosure.
- the electronic device 600 may include at least one processor 602, which executes at least one computer-readable instruction stored or encoded in a computer-readable storage medium (ie, the memory 604) (ie, the above-mentioned in the form of software) Implemented elements).
- computer-executable instructions are stored in the memory 604, which when executed, cause at least one processor 602 to complete the following actions: read and parse the pre-stored arrangement file, and determine the front-end application to be arranged to be referenced All sub-pages; for each sub-page, determine the metadata of the sub-page according to the layout file; and arrange the front-end application based on all the determined sub-pages.
- a non-transitory machine-readable medium may have machine-executable instructions (that is, the above-mentioned elements implemented in the form of software), which when executed by a machine, cause the machine to execute the various embodiments of the present disclosure in conjunction with FIGS. 1-5.
- machine-executable instructions that is, the above-mentioned elements implemented in the form of software
- a computer program including computer-executable instructions, which, when executed, cause at least one processor to execute each of the above described in conjunction with FIGS. 1-5 in the various embodiments of the present disclosure.
- a computer program product including computer-executable instructions, which when executed, cause at least one processor to execute the above described in conjunction with FIGS. 1-5 in the various embodiments of the present disclosure.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
编排前端应用程序的方法、装置、电子设备、介质和程序产品。编排前端应用程序的方法,包括:读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面;针对每一个子页面,根据所述编排文件确定该子页面的元数据;以及基于所确定的所有子页面来编排所述前端应用程序。
Description
本公开通常涉及网络技术领域,更具体地,涉及编排前端应用程序的方法、装置、电子设备、介质和程序产品。
微服务目前是可扩展系统架构的主流方法。在实现微服务架构时,使得服务保持较小、独立并且可复用是用于构建综合应用程序的较好做法。这一点也适用于前端应用程序架构。当需要使用微服务作为用于前端解决方案的构建块时,情况变得复杂。如何使用数十个、甚至有时数百个微服务来构建一个统一的网站或者移动应用程序是一个问题。
发明内容
在下文中给出关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
鉴于上述,本公开提出了一种利用来自不同前端应用程序的子页面来编排前端应用程序,从而构建微前端架构的解决方案。
根据本公开的一个方面,提供了编排前端应用程序的方法,包括:读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面;针对每一个子页面,根据所述编排文件确定该子页面的元数据;以及基于所确定的所有子页面来编排所述前端应用程序。
可选地,在上述方面的一个示例中,在读取并解析预先存储的编排文件之前,所述方法还包括:对已有前端应用程序的路由进行解析来提取每一个已有前端应用程序的子页面的元数据,并作为注册信息进行存储。
可选地,在上述方面的一个示例中,所述编排文件定义至少一个前端应用程序要引用的子页面以及每一个子页面的元数据。其中,所述编排文件中定义的每一个子页面的元数据是基于所存储的注册信息而确定。
可选地,在上述方面的一个示例中,根据所述编排文件确定该子页面的元数据至少包括:根据所述编排文件确定该子页面的名称以及该子页面的路由。
可选地,在上述方面的一个示例中,根据所述编排文件确定该子页面的元数据还包括以下操作中的至少一项:根据所述编排文件确定子页面的配置参数的值;以及针对子页面生成鉴权和认证信息。
可选地,在上述方面的一个示例中,基于所确定的所有子页面编排所述前端应用程序包括:基于预先存储的应用程序模板或者用户自定义应用程序模板,生成所述前端应用程序的主页面的框架;将所确定的所有子页面填充到所述框架的内容区域中,以及将每一个子页面的路由添加至所述框架的导航面板;以及调用各个子页面所对应的编译器对子页面进行编译,以生成待部署的前端应用程序包。其中,对于属于同一已有前端应用程序的一个或多个子页面,用对应的编译器针对所述一个或多个子页面中的每一个子页面分别进行编译,或者针对所述多个子页面一起进行编译。
可选地,在上述方面的一个示例中,在生成待部署的前端应用程序包之前,基于所确定的所有子页面编排所述前端应用程序还包括:生成所述前端应用程序的全局认证和鉴权信息。
可选地,在上述方面的一个示例中,所述方法还包括:将所述待部署的前端应用程序包部署到应用程序容器中或者部署到移动应用程序商店中。
根据本公开的另一方面,提供了编排前端应用程序的装置,包括:一个子页面确定单元,被配置为读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面;一个元数据确定单元,被配置为针对每一个子页面,根据所述编排文件确定该子页面的元数据;以及一个编排单元,被配置为基于所确定的所有子页面来编排所述前端应用程序。
可选地,在上述方面的一个示例中,所述装置还包括:一个初始化单元,被配置为对已有前端应用程序的路由进行解析来提取每一个已有前端 应用程序的子页面的元数据,并作为注册信息进行存储。
可选地,在上述方面的一个示例中,所述编排文件定义至少一个前端应用程序要引用的子页面以及每一个子页面的元数据,其中,所述编排文件中定义的每一个子页面的元数据是基于所存储的注册信息而确定。
可选地,在上述方面的一个示例中,所述元数据确定单元进一步被配置为:根据所述编排文件确定该子页面的名称以及该子页面的路由。
可选地,在上述方面的一个示例中,所述元数据确定单元进一步被配置为执行以下操作中的至少一项:根据所述编排文件确定子页面的配置参数的值;以及针对子页面生成鉴权和认证信息。
可选地,在上述方面的一个示例中,所述编排单元进一步配置为:基于预先存储的应用程序模板或者用户自定义应用程序模板,生成所述前端应用程序的主页面的框架;将所确定的所有子页面填充到所述框架的内容区域中,以及将每一个子页面的路由添加至所述框架的导航面板;以及调用各个子页面所对应的编译器对子页面进行编译,以生成待部署的前端应用程序包。其中,对于属于同一已有前端应用程序的一个或多个子页面,用对应的编译器针对所述一个或多个子页面中的每一个子页面分别进行编译,或者针对所述多个子页面一起进行编译。
可选地,在上述方面的一个示例中,所述编排单元进一步配置为:生成所述前端应用程序的全局认证和鉴权信息。
可选地,在上述方面的一个示例中,所述装置还包括:一个部署单元,被配置为将所述待部署的前端应用程序包部署到应用程序容器中或者部署到移动应用程序商店中。
根据本公开的另一方面,提供了电子设备,包括:至少一个处理器;以及与所述至少一个处理器耦合的一个存储器,所述存储器用于存储指令,当所述指令被所述至少一个处理器执行时,使得所述处理器执行如上所述的方法。
根据本公开的另一方面,提供了一种非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的方法。
根据本公开的另一方面,提供了一种计算机程序,包括计算机可执行 指令,所述计算机可执行指令在被执行时使至少一个处理器执行如上所述的方法。
根据本公开的另一方面,提供了一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行如上所述的方法。
根据本公开的方法和装置,提供了一种利用来自不同前端应用程序的子页面来编排前端应用程序,从而构建微前端架构的解决方案。可以将过去用传统语言所开发的前端应用程序和近来基于新的语言开发的新的前端应用程序都利用起来,来构建一个复合前端应用程序。这样构建的前端应用程序,便于管理和部署,并且可以节省开发成本。
根据本公开的方法和装置所编排的前端应用程序独立于平台,因此能够广泛地运行在不同类型的前端浏览器上。
参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。
图1示出了应用程序页面框架的示意图;
图2是示出了根据本公开的一个实施例的编排前端应用程序的方法的示例性过程的流程图;
图3是示出方框S206中的操作的一种示例性过程的流程图;
图4是示出了根据本公开的一个实施例的编排前端应用程序的装置的示例性配置的框图;
图5是示出了根据本公开的一个实施例的前端应用程序编排系统的示例性配置的框图;以及
图6示出了根据本公开的实施例的编排前端应用程序的电子设备的方框图。
附图标记
100:应用程序页面框架 102:页面标题
104:内容区域 106:导航面板
S201、S202、S204、S206、S208、S2062、 200:编排前端应用程序的方
S2064、S2066、S2068:步骤 法
400:编排前端应用程序的装
置
402:子页面确定单元 404:元数据确定单元
406:编排单元 401:初始化单元
408:部署单元 500:前端应用程序编排系统
501、502、503:现有前端应用程序 5012、5022、5032:路由
504:注册中心 505:编排器模块
506:编排文件 507:布局模块
5014、5024、5034:编译器 509:应用程序容器
5091、5092...509m:前端应用程序 A1、A2、An、B1、B2、Bn、
C1、C2、Cn:子页面
510:消息总线 511:本地存储器
602:处理器 604:存储器
600:电子设备
现在将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本公开内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。例如,所描述的方法可以按照与所描述的顺序不同的顺序来执行,以及各个步骤可以被添加、省略或者组合。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例” 和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
本公开提出了一种通过对来自不同前端应用程序的页面进行编排来构建微前端系统的解决方案。针对分组的页面来定义编排语言,这些分组的页面将应用程序分成逻辑单元以便于管理和部署。通过解释和解析编排文件,可以生成应用程序分组模型,并且将其编译为可部署的前端应用程序,然后可以部署到网络容器中。
首先介绍一些在本说明书中会用到的定义。
微服务:微服务架构方式是将单个应用程序开发为一套小型服务的方法,每个小型服务运行在其自己的进程中,并且以轻量级机制进行通信,通常是HTTP资源应用程序接口。这些服务通过完全自动化的部署机器围绕业务能力来构建并且可独立部署。
编排:编排是指自动化配置、协调、并且管理计算机系统和软件。
前端网络部署:前端网络开发是将数据转换为图形界面的操作,用户可以通过使用HTML、CSS和JavaScript的数字交互来观看数据以及与数据交互。
微前端:微前端是类似于微服务的架构,其将微服务的概念应用于浏览器侧,将网络应用程序从一个单一目的应用程序变换为多个小型的前端应用程序。每个前端应用程序都可以独立地运行、开发和部署。
在过去,使用Backbone.js、Angular.js、Vue.js1等编写的单页面的遗留前端应用程序已经在线运行,并且没有新的特征。对于这样的前端应用程序,没必要再浪费时间和工作量来改写它们。同时,一些新的前端应用程序是基于新的框架来构建,例如Angular 7,Vue 2、React 12等。如何利用这些遗留的前端应用程序或新的前端应用程序来构建复合前端应用程序是一个大的挑战。
一般来说,目前的前端应用程序的典型的特征是通过框架架构分配路由,框架可以给对应的组件分配路由。图1示出了目前的前端应用程序页 面框架100的示意图。前端框架定义了页面的骨架。其中,方框102中是页面标题(header)。方框104中是内容区域,可以将每个根组件将填充在内容区域中,并且这部分内容将作为子页面可视化。方框106是导航面板,导航面板可以控制子页面之间的路由。
本公开提出了一种通过利用来自不同前端应用程序的子页面编排前端应用程序,来构建微前端架构的解决方案。
现在结合附图来描述根据本公开的实施例的编排前端应用程序的方法和装置。
图2是示出了根据本公开的一个实施例的编排前端应用程序的方法200的示例性过程的流程图。
在图2中,首先在方框S202中,读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面。
其中,编排文件是针对每一个待编排的前端应用程序的需要预先编写的,编排文件定义了一个或多个前端应用程序各自所引用的子页面。此外,编排文件还可以定义前端应用程序的鉴权和认证信息、渲染模板等。针对每一个子页面,编排文件还定义了子页面的元数据,具体可以包括子页面名称、子页面类型、路径、配置参数、以及子页面的鉴权和认证信息等。
下面示出了一个YAML格式的编排文件的具体示例,本领域技术人员可以理解编排文件的编排语言不限于YAML语言,也可以采用其他格式,例如Json语言、XML语言等。
从这段编排文件的代码中可以看到,一个编排文件中可以定义多个前端应用程序,对于前端应用程序“app1”,包括其描述、host、URL、以及多个子页面的定义。对于子页面“PageA2”,包括子页面名称、类型、路由、参数、鉴权认证信息等。
本领域技术人员可以理解如何按照需要来编写编排语言,在此不再赘述。
在一个示例中,在执行方框S202中的操作之前,可以先进行S201中的初始化操作。
在方框S201中,通过读取和解析现有已开发的多个前端应用程序的路由来提取每一个现有前端应用程序的子页面的元数据,并作为注册信息进行存储。
本领域技术人员可以理解,通过方框S201的初始化操作,可以将所提取的每一个现有前端应用程序的子页面的元数据作为注册信息进行存储。例如可以存储在数据库中,在编排前端应用程序的时候,可以直接在数据库查询相关子页面的元数据,而无需每次都执行方框S201中的操作。所提取的元数据例如还可以以存储在存储介质中等其他方式进行存储,在根据本公开的方法中对元数据的存储方式不做限定。
例如,基于所存储的所有子页面的注册信息可以确定编排文件中所定义的子页面的元数据。
接下来,在方框S204中,针对每一个子页面,根据所述编排文件确定该子页面的元数据。
具体地,可以根据所述编排文件确定一个子页面的名称以及该子页面的路由。
在确定了子页面的名称和路由的情况下,即可用该子页面进行前端应用程序的编排。
在一个示例中,还可以根据所述编排文件确定子页面的配置参数的值和/或针对每一个子页面生成鉴权和认证信息。
在确定了待编排的前端应用程序的每一个子页面的信息之后,可以执行方框S106中的操作,基于所确定的所有子页面来编排所述前端应用程序。
图3是示出方框S206中的操作的一种示例性过程的流程图。如图3所示,方框S206中的操作可以包括以下操作。
首先,在方框S2062中,可以基于预先存储的应用程序模板或者是用户自定义的应用程序模板来生成所述前端应用程序的主页面的框架。
应用程序模板例如可以包括HTML DOM(文档对象模型)元素、占位符、HTML样式(style)等。
接着,在方框S2064中,将所确定的所有子页面填充到生成的框架的内容区域,并将每个子页面的路由添加至框架的导航面板。
然后,在方框S2068中,调用各个子页面所对应的编译器对子页面进行编译,以生成待部署的前端应用程序包。可以理解,对于来自不同已有应用程序的子页面,分别采用其对应的不同的编译器进行编译;而对于属于同一已有应用程序的一个或多个子页面,可以用对应的编译器针对所述一个或多个子页面中的每一个子页面分别进行编译,也可以针对所述多个子页面一起进行编译。
可选的,在执行方框S2068中的操作之前,还可以执行S2066中的操作:生成所编排的前端应用程序的全局认证和鉴权信息。
在一个示例中,方法200还可以包括S208中的操作,可以将所生成的待部署的前端应用程序包部署到应用程序容器中,从而得到网页前端应用 程序;也可以将前端应用程序包部署到移动应用程序商店中,从而得到移动客户端的前端应用程序。
根据本公开的方法,提供了一种利用来自不同前端应用程序的子页面来编排前端应用程序,从而构建微前端架构的解决方案。可以将过去用传统语言所开发的前端应用程序和近来基于新的语言所开发的前端应用程序都利用起来,来构建一个复合前端应用程序。这样构建的前端应用程序,便于管理和部署,并且可以节省开发成本。
此外,根据本公开的方法所编排的前端应用程序独立于平台,因此能够广泛地运行在不同类型的前端浏览器上。
图4是示出了根据本公开的一个实施例的编排前端应用程序的装置500的示例性配置的框图。
编排前端应用程序的装置400包括一个子页面确定单元402、一个元数据确定单元404和一个编排单元406。
子页面确定单元402被配置为读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面。
元数据确定单元404被配置为针对每一个子页面,根据所述编排文件确定该子页面的元数据。
编排单元406被配置为基于所确定的所有子页面来编排所述前端应用程序。
在一个示例中,装置400还可以包括一个初始化单元401,被配置为对现有前端应用程序的路由进行解析来提取每一个现有前端应用程序的子页面的元数据,并作为注册信息进行存储。
在一个示例中,所述编排文件定义至少一个前端应用程序所引用的子页面以及每一个子页面的元数据,其中,所述编排文件中定义的每一个子页面的元数据是基于所存储的注册信息而确定。
在一个示例中,所述元数据确定单元404进一步被配置为:根据所述编排文件确定该子页面的名称以及该子页面的路由。
在一个示例中,所述元数据确定单元404进一步被配置为执行以下操作中的至少一项:
根据所述编排文件确定子页面的配置参数的值;以及
针对子页面生成鉴权和认证信息。
在一个示例中,所述编排单元406进一步配置为:
基于预先存储的应用程序模板,生成所述前端应用程序的主页面的框架;
将所确定的所有子页面填充到所述框架的内容区域中,以及将每一个子页面的路由添加至所述框架的导航面板;以及
调用每个子页面所对应的编译器分别对子页面进行编译生成待部署的前端应用程序包。
在一个示例中,所述编排单元406进一步配置为:
生成所述前端应用程序的全局认证和鉴权信息。
在一个示例中,编排前端应用程序的装置400还可以包括一个部署单元408,被配置为将所述待部署的前端应用程序包部署到应用程序容器中或者部署到移动应用程序商店中。
编排前端应用程序的装置400的各个部分的操作和功能的细节例如可以与参照结合图1-3描述的本公开的编排前端应用程序的方法的实施例的相关部分相同或类似,这里不再详细描述。
还需要说明的是,图4所示的编排前端应用程序的装置400及其组成单元的结构仅仅是示例性的,本领域技术人员可以根据需要对图4所示的结构框图进行修改。
图5示出了利用根据本公开的编排前端应用程序的方法来编排前端应用程序的前端应用程序编排系统500的一个具体示例的示意图。下面结合图5来详细说明前端应用程序编排系统500的具体操作过程。
图5中的方框501、502和503都是一个现有的已开发的前端应用程序,其中前端应用程序501包括子页面A1、A2...An等,前端应用程序502包括子页面B1、B2...Bn等,前端应用程序503包括子页面C1、C2...Cn等。
可以理解,虽然图5中只示出了3个应用程序,而在实际应用中可以包括任意多个现有的前端应用程序,对于前端应用程序的数量没有限制;此外,这里每个前端应用程序所包括的子页面的数目可能是各不相同的。
首先,对于现有前端应用程序501、502和503各自的路由5012、5022和5032进行解析,来提取每一个前端应用程序的子页面的元数据,并将这些子页面的元数据都注册到注册中心504中。可以理解,注册中心504可以是一个数据库,其中存储有所有子页面的元数据作为注册信息。该注册中心504可以提供一个接口,以供其他模块提取其中子页面的数据。
接下来,编排器模块505读取并解析编排文件506,确定待编排的前端应用程序所要引用的所有子页面,并且从注册中心504获得每一个子页面的元数据。具体地,可以确定子页面的名称、子页面的路由、子页面的配置参数的值以及生成子页面鉴权和认证信息等。
在确定了每一个子页面的元数据之后,可以用这些子页面来编排想要编排的前端应用程序。
具体地,编排器模块505可以从布局模块507中获取模板,布局模块507中可以定义很多用户定制的用户界面模板,这些模板具有唯一的名称,可以在编排文件中引用。每个模板可以包括HTML DOM(文档对象模型)元素、占位符、HTML样式(style)等。编排器模块505可以加载模板,然后基于模板生成主页面的可视化的应用程序框架。然后可以将所确定的所有子页面填充到所述框架的内容区域中,以及将每一个子页面的路由添加至所述框架的导航面板。
接着,可以根据识别和访问管理(IAM)模块508中的鉴权和认证信息对所生成的前端应用程序进行全局的鉴权和认证。
在此之后,编排器模块605可以调用每个现有前端应用程序501、502和503各自的编译器5014、5024和5034分别对对应的子页面进行编译,生成一个可部署的前端应用程序包。
最后,编排器模块505可以将前端应用程序包部署到应用程序容器509中。图5所示的应用程序容器509中,部署了前端应用程序5091、5092...509m。以编排的前端应用程序5091为例,可以看出其中包括了来自不同现有前端应用程序501、503和502的子页面A2、C3...Bn等。
在进行部署之后,就可以访问新部署的前端应用程序。新部署的前端应用程序的不同页面之间可以基于异步事件机制、经由消息总线510进行通信。
此外,该系统还可以包括一个本地存储器511,其可以提供子页面之间共享数据的机制。
如上参照图1到图5,对根据本公开的实施例的编排前端应用程序的方法、装置以及前端应用程序编排系统的实施例进行了描述。以上所述的编排前端应用程序的装置可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
图6示出了根据本公开的实施例的实现编排前端应用程序的电子设备600的方框图。根据一个实施例,电子设备600可以包括至少一个处理器602,处理器602执行在计算机可读存储介质(即,存储器604)中存储或编码的至少一个计算机可读指令(即,上述以软件形式实现的元素)。
在一个实施例中,在存储器604中存储计算机可执行指令,其当执行时使得至少一个处理器602完成以下动作:读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面;针对每一个子页面,根据所述编排文件确定该子页面的元数据;以及基于所确定的所有子页面来编排所述前端应用程序。
应该理解,在存储器604中存储的计算机可执行指令当执行时使得至少一个处理器602进行本公开的各个实施例中以上结合图1-5描述的各种操作和功能。
根据一个实施例,提供了一种非暂时性机器可读介质。该非暂时性机器可读介质可以具有机器可执行指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本公开的各个实施例中以上结合图1-5描述的各种操作和功能。
根据一个实施例,提供了一种计算机程序,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行本公开的各个实施例中以上结合图1-5描述的各种操作和功能。
根据一个实施例,提供了一种计算机程序产品,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行本公开的各个实施例中以上结合图1-5描述的各种操作和功能。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示 可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。
Claims (20)
- 编排前端应用程序的方法,包括:读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面;针对每一个子页面,根据所述编排文件确定该子页面的元数据;以及基于所确定的所有子页面来编排所述前端应用程序。
- 如权利要求1所述的方法,在读取并解析预先存储的编排文件之前,所述方法还包括:对已有前端应用程序的路由进行解析来提取每一个已有前端应用程序的子页面的元数据,并作为注册信息进行存储。
- 如权利要求2所述的方法,其中,所述编排文件定义至少一个前端应用程序要引用的子页面以及每一个子页面的元数据,其中,所述编排文件中定义的每一个子页面的元数据是基于所存储的注册信息而确定。
- 如权利要求1-3中任意一项所述的方法,其中,根据所述编排文件确定该子页面的元数据至少包括:根据所述编排文件确定该子页面的名称以及该子页面的路由。
- 如权利要求4所述的方法,其中,根据所述编排文件确定该子页面的元数据还包括以下操作中的至少一项:根据所述编排文件确定子页面的配置参数的值;以及针对子页面生成鉴权和认证信息。
- 如权利要求1-3中任意一项所述的方法,其中,基于所确定的所有子页面编排所述前端应用程序包括:基于预先存储的应用程序模板或者用户自定义应用程序模板,生成所述前端应用程序的主页面的框架;将所确定的所有子页面填充到所述框架的内容区域中,以及将每一个子页面的路由添加至所述框架的导航面板;以及调用各个子页面所对应的编译器对子页面进行编译,以生成待部署的前端应用程序包。
- 如权利要求6所述的方法,其中,在生成待部署的前端应用程序包之前,基于所确定的所有子页面编排所述前端应用程序还包括:生成所述前端应用程序的全局认证和鉴权信息。
- 如权利要求6所述的方法,还包括:将所述待部署的前端应用程序包部署到应用程序容器中或者部署到移动应用程序商店中。
- 编排前端应用程序的装置(400),包括:一个子页面确定单元(402),被配置为读取并解析预先存储的编排文件,确定待编排的前端应用程序所要引用的所有子页面;一个元数据确定单元(404),被配置为针对每一个子页面,根据所述编排文件确定该子页面的元数据;以及一个编排单元(406),被配置为基于所确定的所有子页面来编排所述前端应用程序。
- 如权利要求9所述的装置(400),还包括:一个初始化单元(401),被配置为对已有前端应用程序的路由进行解析来提取每一个已有前端应用程序的子页面的元数据,并作为注册信息进行存储。
- 如权利要求10所述的装置(400),其中,所述编排文件定义至少一个前端应用程序要引用的子页面以及每一个子页面的元数据,其中,所述编排文件中定义的每一个子页面的元数据是基于所存储的注册信息而确定。
- 如权利要求9-11任意一项所述的装置(400),其中,所述元数据确定单元(404)进一步被配置为:根据所述编排文件确定该子页面的名称以及该子页面的路由。
- 如权利要求12所述的装置(400),其中,所述元数据确定单元(404)进一步被配置为执行以下操作中的至少一项:根据所述编排文件确定子页面的配置参数的值;以及针对子页面生成鉴权和认证信息。
- 如权利要求9-11中任意一项所述的装置(400),其中,所述编排单元(406)进一步配置为:基于预先存储的应用程序模板或者用户自定义应用程序模板,生成所述前端应用程序的主页面的框架;将所确定的所有子页面填充到所述框架的内容区域中,以及将每一个子页面的路由添加至所述框架的导航面板;以及调用各个子页面所对应的编译器对子页面进行编译,以生成待部署的前端应用程序包。
- 如权利要求14所述的装置(400),其中,所述编排单元(406)进一步配置为:生成所述前端应用程序的全局认证和鉴权信息。
- 如权利要求15所述的装置,还包括:一个部署单元(408),被配置为将所述待部署的前端应用程序包部署到应用程序容器中或者部署到移动应用程序商店中。
- 电子设备(600),包括:至少一个处理器(602);以及与所述至少一个处理器(602)耦合的一个存储器(604),所述存储器 用于存储指令,当所述指令被所述至少一个处理器(602)执行时,使得所述处理器(602)执行如权利要求1到8中任意一项所述的方法。
- 一种非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求1到8中任意一项所述的方法。
- 一种计算机程序,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行根据权利要求1至8中任意一项所述的方法。
- 一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行根据权利要求1至8中任意一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201980098925.5A CN114207575A (zh) | 2019-09-29 | 2019-09-29 | 编排前端应用程序的方法、装置、电子设备、介质和程序产品 |
EP19946645.9A EP4024201A4 (en) | 2019-09-29 | 2019-09-29 | FRONT END APPLICATION ORCHESTRATION METHOD, APPARATUS, ELECTRONIC DEVICE, MEDIA AND PROGRAM PRODUCT |
PCT/CN2019/109249 WO2021056594A1 (zh) | 2019-09-29 | 2019-09-29 | 编排前端应用程序的方法、装置、电子设备、介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/109249 WO2021056594A1 (zh) | 2019-09-29 | 2019-09-29 | 编排前端应用程序的方法、装置、电子设备、介质和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021056594A1 true WO2021056594A1 (zh) | 2021-04-01 |
Family
ID=75165385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2019/109249 WO2021056594A1 (zh) | 2019-09-29 | 2019-09-29 | 编排前端应用程序的方法、装置、电子设备、介质和程序产品 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4024201A4 (zh) |
CN (1) | CN114207575A (zh) |
WO (1) | WO2021056594A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106487814A (zh) * | 2016-12-20 | 2017-03-08 | 浪潮通信信息系统有限公司 | 一种持续集成的混生移动应用在线生成服务 |
WO2017157062A1 (zh) * | 2016-03-15 | 2017-09-21 | 北京金山安全软件有限公司 | 一种动态文件的传输方法、装置及电子设备 |
CN109271170A (zh) * | 2018-09-05 | 2019-01-25 | 杭州数梦工场科技有限公司 | 一种分布式系统部署方法、系统、电子设备及存储介质 |
CN109783078A (zh) * | 2018-12-14 | 2019-05-21 | 平安证券股份有限公司 | 前端页面的独立开发方法、装置、设备及存储介质 |
CN109901838A (zh) * | 2019-01-17 | 2019-06-18 | 平安证券股份有限公司 | 基于组件化的前端开发方法、装置、设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19710250A1 (de) * | 1997-03-12 | 1998-09-17 | Siemens Nixdorf Inf Syst | Parameteraktualisierungsverfahren |
US7685596B1 (en) * | 2004-09-01 | 2010-03-23 | The Mathworks, Inc. | Deploying and distributing of applications and software components |
US9262138B2 (en) * | 2010-05-27 | 2016-02-16 | Salesforce.Com, Inc. | Adding directives for JavaScript files directly into source code in a multi-tenant database environment |
JP6081472B2 (ja) * | 2011-11-11 | 2017-02-15 | モボファイルズ インク. ディービーエー モボライズ | 専用のキャッシュを管理するためのシステム及び方法 |
GB2506369A (en) * | 2012-09-26 | 2014-04-02 | Canon Kk | Control of service requests communication in a web runtime environment |
US9830134B2 (en) * | 2015-06-15 | 2017-11-28 | Qualcomm Incorporated | Generating object code from intermediate code that includes hierarchical sub-routine information |
US10616352B2 (en) * | 2018-01-24 | 2020-04-07 | Salesforce.Com, Inc. | Integrating third-party vendors' APIs |
-
2019
- 2019-09-29 EP EP19946645.9A patent/EP4024201A4/en active Pending
- 2019-09-29 WO PCT/CN2019/109249 patent/WO2021056594A1/zh unknown
- 2019-09-29 CN CN201980098925.5A patent/CN114207575A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017157062A1 (zh) * | 2016-03-15 | 2017-09-21 | 北京金山安全软件有限公司 | 一种动态文件的传输方法、装置及电子设备 |
CN106487814A (zh) * | 2016-12-20 | 2017-03-08 | 浪潮通信信息系统有限公司 | 一种持续集成的混生移动应用在线生成服务 |
CN109271170A (zh) * | 2018-09-05 | 2019-01-25 | 杭州数梦工场科技有限公司 | 一种分布式系统部署方法、系统、电子设备及存储介质 |
CN109783078A (zh) * | 2018-12-14 | 2019-05-21 | 平安证券股份有限公司 | 前端页面的独立开发方法、装置、设备及存储介质 |
CN109901838A (zh) * | 2019-01-17 | 2019-06-18 | 平安证券股份有限公司 | 基于组件化的前端开发方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4024201A4 * |
Also Published As
Publication number | Publication date |
---|---|
CN114207575A (zh) | 2022-03-18 |
EP4024201A1 (en) | 2022-07-06 |
EP4024201A4 (en) | 2023-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216253B2 (en) | Application prototyping tool | |
CN104484216B (zh) | 服务接口文档和在线测试工具生成方法、装置 | |
CN104714982B (zh) | 一种网页的加载方法和系统 | |
CN109032917B (zh) | 页面调试方法和系统、移动终端以及电脑端 | |
CN110333863B (zh) | 一种生成、显示小程序页面的方法及装置 | |
US8549469B2 (en) | System and method for specification and implementation of MVC (model-view-controller) based web applications | |
CN102043626B (zh) | extjs组件的封装方法及装置、用户界面的生成方法及系统 | |
CN107153636A (zh) | 一种实现以pdf格式快速导出业务数据的方法及系统 | |
US20160283499A1 (en) | Webpage advertisement interception method, device and browser | |
KR20150079867A (ko) | Html5-프로토콜 기반 웹페이지 표시 방법 및 장치 | |
US20140033010A1 (en) | Method and system for dynamic assembly of form fragments | |
CN101714133A (zh) | 一种基于web的数学公式编辑系统及方法 | |
US9152619B2 (en) | System and method for constructing markup language templates and input data structure specifications | |
US20160012144A1 (en) | Javascript-based, client-side template driver system | |
US20100169333A1 (en) | Document processor | |
CN112052000A (zh) | 组件复用、渲染方法及装置 | |
JP4151432B2 (ja) | Xml署名・暗号化手順生成システム | |
CN105590241B (zh) | 自适应地电子票据实现方法及系统 | |
CN113805874A (zh) | 适用于多框架语言的前端代码片段动态渲染方法和系统 | |
WO2024032087A1 (zh) | 局部动态化页面生成方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
WO2021056594A1 (zh) | 编排前端应用程序的方法、装置、电子设备、介质和程序产品 | |
CN111723314B (zh) | 网页展示方法、装置、电子设备及计算机可读存储介质 | |
CN116009863B (zh) | 前端页面渲染方法、设备及存储介质 | |
CN114706582A (zh) | 程序运行时的图标处理方法及装置、电子设备、存储介质 | |
CN113535160B (zh) | 应用模块复用的方法、装置、系统、电子装置和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19946645 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2019946645 Country of ref document: EP Effective date: 20220328 |