Research and development assistance system and method

Through the development of main applications and micro-application services in auxiliary systems, the problem of dispersed development tools and tutorial entrances is solved, and the on-demand loading and resource integration of micro-applications are realized, and the barriers to use are reduced.

CN119415168APending Publication Date: 2025-02-11CHINA MERCHANTS BANK
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411403601.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-09
Publication Date
2025-02-11

AI Technical Summary

Technical Problem

In the current software R&D industry, the entrances to development tools and tutorials are scattered and difficult to retrieve, which makes developers time-consuming and labor-intensive and costly.

Method used

A R&D auxiliary system is proposed, including main application services and micro-application services. The R&D application configuration is obtained through the main application, the micro-application to be registered, and the micro-application registration is carried out in the micro-application service to realize the on-demand loading of micro-applications.

Benefits of technology

It realizes independent deployment and operation of each sub-application, unified integration of resources, provides centralized, integrated, end-to-end tool services, and reduces barriers to use.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119415168A_ABST
    Figure CN119415168A_ABST
Patent Text Reader

Abstract

The invention discloses a research and development auxiliary system and method, and relates to the technical field of application research and development, and the research and development auxiliary system comprises a main application service and a micro application service. The main application service comprises a main application, and the micro application service comprises a plurality of micro applications; the main application obtains research and development application configuration, and determines a to-be-registered micro-application based on the research and development application configuration; the main application performs micro-application registration in the micro-application service based on the to-be-registered micro-application to obtain the to-be-called micro-application; and the main application performs micro-application matching based on the monitored uniform resource locator, and determines a to-be-loaded micro-application in the to-be-called micro-applications based on a matching result. Due to the fact that on-demand loading of the micro-application is achieved through a front-end framework and based on a base mode, independent deployment and operation of all sub-applications are achieved, meanwhile, unified integration of resources is achieved, centralized, integrated and end-to-end tool services are provided, and use barriers are reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of application research and development technology, and in particular to a research and development auxiliary system and method. Background Art

[0002] The software development industry is currently in a stage of rapid development and innovation. Technological innovation, advancement of development tools, and the emergence of emerging technologies and trends have brought huge development opportunities to the industry.

[0003] However, various development tutorials and development tools in the current application development industry are scattered across various platforms and documents, with scattered entrances and difficult retrieval, which results in developers spending a lot of time and effort in using tools and tutorials, and high costs. Summary of the invention

[0004] The main purpose of this application is to provide a research and development assistance system and method, aiming to solve the technical problems that tools and tutorials are scattered, difficult to retrieve, and difficult to ensure timeliness and quality.

[0005] To achieve the above objectives, the present application proposes a research and development assistance system, which includes: a main application service and a micro application service;

[0006] The main application service includes a main application, and the micro application service includes a plurality of micro applications;

[0007] The main application is used to obtain the R&D application configuration and determine the micro application to be registered based on the R&D application configuration;

[0008] The main application is further used to register a micro-application in the micro-application service based on the micro-application to be registered, and obtain the micro-application to be called;

[0009] The main application is further used to match micro-applications based on the monitored uniform resource locator, and determine the micro-application to be loaded from the micro-applications to be called based on the matching result.

[0010] In one embodiment, the main application is further used to determine whether there is a permission identifier in the micro-application to be loaded when the micro-application to be loaded is activated;

[0011] The main application is further used to obtain the HTML string in the micro-application to be loaded when the permission identifier exists in the micro-application to be loaded;

[0012] The main application is further used to parse the HTML string to obtain the target loading resource of the micro-application to be loaded;

[0013] The main application is also used to load the target loading resource.

[0014] In one embodiment, the target loading resource includes: an external link CSS resource;

[0015] The main application is also used to parse the external link CSS resource to obtain a preset tag;

[0016] The main application is further used to generate a document object based on the preset tag and load the document object through a document object model.

[0017] In one embodiment, the target loading resource further includes: an external link JS resource;

[0018] The main application is further used to add an asynchronous attribute to the script tag of the external link JS resource to obtain the asynchronous JS resource;

[0019] The main application is also used to execute the asynchronous JS resource based on a preset interface.

[0020] In one embodiment, it is also used to pass instructions and data to the micro-application to be loaded through public components and public functions.

[0021] In one embodiment, the main application is further configured to throw an exception when the permission identifier does not exist in the micro-application to be loaded.

[0022] In addition, to achieve the above purpose, the present application also proposes a research and development assistance method, which is applied to the research and development assistance system as described above, and the method includes:

[0023] The main application obtains the R&D application configuration, and determines the micro-application to be registered based on the R&D application configuration;

[0024] The main application registers a micro-application in the micro-application service based on the micro-application to be registered, and obtains the micro-application to be called;

[0025] The main application matches micro-applications based on the monitored uniform resource locators, and determines the micro-application to be loaded from the micro-applications to be called based on the matching result.

[0026] In one embodiment, the method further comprises:

[0027] When the micro-application to be loaded is activated, the main application determines whether there is a permission identifier in the micro-application to be loaded;

[0028] When the permission identifier exists in the micro-application to be loaded, the main application obtains the HTML string in the micro-application to be loaded;

[0029] The main application parses the HTML string to obtain the target loading resource of the micro-application to be loaded;

[0030] The main application loads the target loading resource.

[0031] In one embodiment, the target loading resource includes: an externally linked CSS resource; and the step of the main application loading the target loading resource includes:

[0032] The main application parses the external link CSS resource to obtain a preset tag;

[0033] The main application generates a document object based on the preset tag, and loads the document object through a document object model.

[0034] In one embodiment, the target loading resource further includes: an external link JS resource; and the step of the main application loading the target loading resource further includes:

[0035] The main application adds an asynchronous attribute to the script tag of the external link JS resource to obtain the asynchronous JS resource;

[0036] The main application executes the asynchronous JS resource based on a preset interface.

[0037] One or more technical solutions proposed in this application have at least the following technical effects:

[0038] The research and development auxiliary system in this application includes: a main application service and a micro-application service; the main application service includes a main application, and the micro-application service includes several micro-applications; the main application obtains the research and development application configuration, and determines the micro-application to be registered based on the research and development application configuration; the main application registers the micro-application in the micro-application service based on the micro-application to be registered, and obtains the micro-application to be called; the main application matches the micro-application based on the monitored uniform resource locator, and determines the micro-application to be loaded in the micro-application to be called based on the matching result. Because it is through the front-end architecture, based on the base mode to achieve on-demand loading of micro-applications, realizes the independent deployment and operation of each sub-application, and realizes the unified integration of resources, provides a centralized, integrated, end-to-end tool service, and reduces the use barrier. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0040] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following is a brief introduction to the drawings required for use in the embodiments or the description of the prior art. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0041] Figure 1 This is a functional structure diagram of the first embodiment of the research and development assistance system of this application;

[0042] Figure 2 A schematic diagram of the workflow in one implementation of the research and development assistance system for this application;

[0043] Figure 3 A schematic diagram of the application loading workflow in one implementation of the application research and development assistance system;

[0044] Figure 4 A system structure block diagram of one implementation of the research and development assistance system for this application;

[0045] Figure 5 A schematic diagram of the workflow of the first embodiment of the research and development assistance method of this application;

[0046] Figure 6 This is a schematic diagram of the workflow of the second embodiment of the research and development assistance method of this application.

[0047] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION

[0048] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.

[0049] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.

[0050] This application proposes a research and development treasure box, which is a research and development auxiliary system that can assist in research and development. Specifically, as a small public integrated portal entrance, it can provide a series of integrated functions such as online use, download, release and management of small tools.

[0051] In order to solve the problem of scattered entrances to various tools and tutorials in the industry, this application collects and integrates various development tools from inside and outside the industry, and independently deploys and stores them. It enables the use of various online tools without downloading. At the same time, it enables the use of offline tools and tutorial tools by providing documents and download links. It also provides an entrance to publish tools, which can realize the co-construction and sharing of tools, greatly enriching the types of tools and the convenience of use.

[0052] In terms of tool search, you can quickly search according to the category and name of the tool, and it also provides entrances such as home page recommendations, my favorites, and popularity rankings.

[0053] In terms of tool management, the toolbox has the functions of recommending popular tools, collecting commonly used tools, and following tools according to their categories and departments.

[0054] In terms of front-end architecture, the R&D auxiliary system of this application adopts a micro-front-end architecture. The entire project includes a main application service and a micro-application service. There is only one main application in the main application service, and several micro-applications can be set up in the micro-application service according to demand. Specifically, different micro-applications can provide users with different tools or services, realizing the plug-in of application modules.

[0055] Compared with the existing technology, the solution of the present application can solve the problems of scattered entrances to various tools and tutorials in the industry, difficulty in retrieval, difficulty in ensuring timeliness and quality, small types and quantities of various tools and tutorials in the industry, difficulty in meeting R&D needs, high tool maintenance costs, slow updates, time-consuming and labor-intensive use of tools and tutorials by developers, difficulty in retrieval, high cost of use, compatibility and integration of tools on multiple platforms and multiple technology stacks, etc.

[0056] Specifically, an embodiment of the present application proposes a research and development assistance system, which may include: a main application service and a micro application service;

[0057] The main application service includes a main application, and the micro application service includes a plurality of micro applications;

[0058] The main application is used to obtain the R&D application configuration and determine the micro application to be registered based on the R&D application configuration;

[0059] The main application is further used to register a micro-application in the micro-application service based on the micro-application to be registered, and obtain the micro-application to be called;

[0060] The main application is further used to match micro-applications based on the monitored uniform resource locator, and determine the micro-application to be loaded from the micro-applications to be called based on the matching result.

[0061] It should be noted that in the embodiment of the present application, when the system is in base mode, the main application is used as the base, and on-demand loading of sub-applications is implemented, which simplifies the tool development process and the complexity of introducing new tools, and realizes the compatible integration of heterogeneous frameworks (supporting multiple frameworks, such as Vue, React, etc.). The development, deployment, and operation of tools (modules) are independent of each other, while achieving consistency in system interaction.

[0062] It is understandable that the base mode in the embodiment of the present application is a centralized management mode, and this mode is responsible for unified management and coordination of each micro-application through a main application as the entrance of all micro-applications. In this mode, micro-applications (or sub-applications) are independent front-end applications, with their own development and technology stacks, which can be independently developed, deployed and maintained by different teams. Through the base station mode of the present application, independent development, deployment and operation between each micro-application can be realized, and the service provision across technology stacks is realized.

[0063] Specifically, each micro-application in the embodiments of the present application has an independent HTML structure and can run independently.

[0064] It can be understood that the main application is the core component of the base mode. As the unified entrance and management center of all micro-applications, it can load and manage each micro-application to ensure that they can run in the predetermined manner and sequence; at the same time, the main application can assume the management responsibility of the front-end routing and distribute the routing to the corresponding micro-application according to the user's request; in addition, the main application can also manage the global state and serve as a bridge for communication between micro-applications to ensure data consistency and smooth communication between applications, and provide some common base functions for each micro-application, such as login, registration, permission management, etc. These functions can be shared and reused by various micro-applications.

[0065] It should be understood that micro-applications, which are the basic units used to implement business in the base model, can have relatively independent functions and technology stacks, and can provide users with different services and functions through independent deployment and independent development.

[0066] It should be noted that when the project starts, the system can obtain the R&D application configuration, and parse it based on the R&D application configuration to determine which services need to run in the configuration, and then determine the micro-application that needs to be called, that is, the micro-application to be registered can be determined based on the R&D application configuration.

[0067] It is understandable that the above R&D application configuration may include various types of data, based on which the micro-applications to be run, the operation mode of each micro-application, and the required performance can be determined. By determining the R&D application configuration, it can be ensured that each micro-application can run in the expected manner to meet the needs of users.

[0068] It should be noted that the workflow of this application can be as follows: Figure 2As shown. When determining the micro application to be registered, the micro application can be registered in the micro application service, and then the micro service to be called can be determined. Each micro application has an independent HTML structure to enable it to run independently. When the system is running, the corresponding configuration can be first performed in the main application area, that is, the R&D application configuration is determined. Based on the application R&D configuration, the corresponding micro application can be registered and the activation rules corresponding to the micro application can be determined. Through the application management service of the main application, the Loader service of the browser can monitor the uniform resource locator (Uniform Resource Location, URL). When the URL changes, the micro application can be matched based on the changed URL, and the micro application to be loaded is determined in the micro application to be called (such as micro application 1, micro application 2, etc.) based on the matching result, and activated and loaded based on the activation rules corresponding to the micro application to be loaded.

[0069] The research and development auxiliary system in the embodiment of the present application includes: a main application service and a micro-application service; the main application service includes a main application, and the micro-application service includes several micro-applications; the main application obtains the research and development application configuration, and determines the micro-application to be registered based on the research and development application configuration; the main application registers the micro-application in the micro-application service based on the micro-application to be registered, and obtains the micro-application to be called; the main application matches the micro-application based on the monitored uniform resource locator, and determines the micro-application to be loaded in the micro-application to be called based on the matching result. Because it is through the front-end architecture, the on-demand loading of micro-applications is realized based on the base mode, the independent deployment and operation of each sub-application is realized, and the unified integration of resources is realized at the same time, a centralized, integrated, end-to-end tool service is provided, and the use barrier is reduced.

[0070] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the above-mentioned embodiment 1 can be referred to the above introduction, and will not be repeated in the following. Figure 3 .like Figure 3 As shown, in the embodiment of the present application, the main application is also used to determine whether there is a permission identifier in the micro-application to be loaded when the micro-application to be loaded is activated;

[0071] The main application is further used to obtain the HTML string in the micro-application to be loaded when the permission identifier exists in the micro-application to be loaded;

[0072] The main application is further used to parse the HTML string to obtain the target loading resource of the micro-application to be loaded;

[0073] The main application is also used to load the target loading resource.

[0074] It should be noted that when the main application matches the corresponding micro-application to be loaded through the URL, it can first determine whether there is a permission identifier (entry) in the micro-application to be loaded, and if not, an exception is directly thrown. That is, the main application is also used to throw an exception when the permission identifier does not exist in the micro-application to be loaded.

[0075] It needs to be explained that if there is an authority identifier, the main application can issue a fetch request to obtain the HTML string of the micro-application to be loaded. The HTML string may contain a cross-domain configuration that has been set in advance. By parsing the HTML string, collecting inline and external JS (JavaScript) and CSS, and processing different types of JS and CSS, the object can be constructed.

[0076] It is understandable that the above-mentioned target loading resources are also the resources required for loading the micro-application, such as CSS, JavaScript (JS), pictures, etc.

[0077] It should be noted that, for external CSS resources, they can be parsed and then introduced through the style tag, and the document object model (DOM) object is returned after the parsing is completed. Specifically, the target loading resources include: external CSS resources;

[0078] The main application is also used to parse the external link CSS resource to obtain a preset tag;

[0079] The main application is further used to generate a document object based on the preset tag and load the document object through a document object model.

[0080] It is understandable that the above-mentioned preset tag is also the above-mentioned style tag. For the externally linked CSS resources, the main application can add them to the DOM object by dynamically creating a style tag, thereby ensuring that the CSS style is loaded and applied before being rendered, thereby avoiding the problem of style flickering.

[0081] It should be noted that for JS, due to the sandbox mode, it will load JS after the loadApp call. Specifically, for external link JS, first you can give the sript an async attribute to avoid blocking the parsing of the document object model, and then execute JS in the requstIdleCallback function interface. Based on the requstIdleCallback function interface, during the rendering process of each frame of the browser, if there is free time, it will execute the callback function passed in, that is, the external link JS.

[0082] Furthermore, in the embodiment of the present application, a self-executing function is designed to wrap the JS string, and then modify the proxy execution of the window, thereby completing the isolation of the sandbox.

[0083] Specifically, the target loading resources also include: external link JS resources;

[0084] The main application is further used to add an asynchronous attribute to the script tag of the external link JS resource to obtain the asynchronous JS resource;

[0085] The main application is also used to execute the asynchronous JS resource based on a preset interface.

[0086] It is understandable that the above-mentioned preset interface is also the above-mentioned requstIdleCallback function interface. In one implementation of the embodiment of the present application, it can also be implemented through the requestAnimalFrame function interface, which means that the browser will call it after each frame is rendered. In the application, the asynchronous JS resources through the requestAnimalFrame function interface will definitely be called, while the asynchronous JS resources through the requstIdleCallback function interface may not be called.

[0087] In one implementation of the embodiment of the present application, the main application is also used to pass instructions and data to the micro-application to be loaded through common components and common functions.

[0088] Specifically, for the component communication mechanism, the public components and public functions in this application can realize resource sharing by issuing from the main application. First, the main application calls through props to pass the instructions and data to be transmitted to the micro application, and the micro application can obtain the content passed by the main application and perform corresponding processing. Furthermore, the main application can register the micro application globally.

[0089] In one implementation of the embodiment of the present application, the overall technical architecture of the R&D assistance system can refer to Figure 4 .

[0090] like Figure 4 As shown, the R&D assistance system in the embodiment of the present application may include a Web layer, a service layer, and a data layer.

[0091] The data layer can use MySQL database and search data through ElasticSearch data search engine. The web layer can use Vue framework, in which system functions can be realized through Vuex, VueRouter, HTML5, CSS, JavaScript, etc.

[0092] It should be noted that the service layer can be connected to the Web layer through GateWay, and the service layer can be provided with a ZA21 framework and multiple API interfaces to implement functions such as user information, menu permissions, integrated tools, and tracking records. Through the communication interface in the API interface, communication with external applications or systems can be achieved, and through the database interface in the API interface, data interaction with the data layer can be achieved.

[0093] In one implementation of an embodiment of the present application, the microservices that the service layer can provide may include an embedded machine, a micro-steward, a general authority management platform, a one-number system, an all-in-one public service, a Beidou log system, etc., and the embodiment of the present application does not limit this.

[0094] In the embodiment of the present application, when the micro-application to be loaded is activated, the main application determines whether there is a permission identifier in the micro-application to be loaded; when the main application has a permission identifier in the micro-application to be loaded, the main application obtains the HTML string in the micro-application to be loaded; the main application parses the HTML string to obtain the target loading resource of the micro-application to be loaded; the main application loads the target loading resource. By verifying the existence of the permission identifier, the present application ensures that the micro-application can be safely and efficiently loaded and rendered in the main application, thereby improving the integration capability of the system.

[0095] Based on the R&D assistance system described in the above embodiment of the present application, the present application also proposes a R&D assistance method. For details, please refer to 5. The method in the embodiment of the present application includes:

[0096] Step S10, the main application obtains the R&D application configuration, and determines the micro-application to be registered based on the R&D application configuration;

[0097] Step S20, the main application registers a micro-application in the micro-application service based on the micro-application to be registered, and obtains the micro-application to be called;

[0098] Step S30: the main application matches micro-applications based on the monitored uniform resource locator, and determines the micro-application to be loaded from the micro-applications to be called based on the matching result.

[0099] It should be noted that in the embodiment of the present application, when the system is in base mode, the main application is used as the base, and on-demand loading of sub-applications is implemented, which simplifies the tool development process and the complexity of introducing new tools, and realizes the compatible integration of heterogeneous frameworks (supporting multiple frameworks, such as Vue, React, etc.). The development, deployment, and operation of tools (modules) are independent of each other, while achieving consistency in system interaction.

[0100] It is understandable that the base mode in the embodiment of the present application is a centralized management mode, and this mode is responsible for unified management and coordination of each micro-application through a main application as the entrance of all micro-applications. In this mode, micro-applications (or sub-applications) are independent front-end applications, with their own development and technology stacks, which can be independently developed, deployed and maintained by different teams. Through the base station mode of the present application, independent development, deployment and operation between each micro-application can be realized, and the service provision across technology stacks is realized.

[0101] Specifically, each micro-application in the embodiments of the present application has an independent HTML structure and can run independently.

[0102] It can be understood that the main application is the core component of the base mode. As the unified entrance and management center of all micro-applications, it can load and manage each micro-application to ensure that they can run in the predetermined manner and sequence; at the same time, the main application can assume the management responsibility of the front-end routing and distribute the routing to the corresponding micro-application according to the user's request; in addition, the main application can also manage the global state and serve as a bridge for communication between micro-applications to ensure data consistency and smooth communication between applications, and provide some common base functions for each micro-application, such as login, registration, permission management, etc. These functions can be shared and reused by various micro-applications.

[0103] It should be understood that micro-applications, which are the basic units used to implement business in the base model, can have relatively independent functions and technology stacks, and can provide users with different services and functions through independent deployment and independent development.

[0104] It should be noted that when the project starts, the system can obtain the R&D application configuration, and parse it based on the R&D application configuration to determine which services need to run in the configuration, and then determine the micro-application that needs to be called, that is, the micro-application to be registered can be determined based on the R&D application configuration.

[0105] It is understandable that the above R&D application configuration may include various types of data, based on which the micro-applications to be run, the operation mode of each micro-application, and the required performance can be determined. By determining the R&D application configuration, it can be ensured that each micro-application can run in the expected manner to meet the needs of users.

[0106] It should be noted that when determining the micro-application to be registered, the micro-application registration can be performed in the micro-application service, and then the micro-service to be called is determined. Each micro-application has an independent HTML structure to enable it to run independently. When the system is running, first, the corresponding configuration can be performed in the main application area, that is, the R&D application configuration is determined. Based on the application R&D configuration, the corresponding micro-application can be registered and the activation rule corresponding to the micro-application can be determined. Through the application management service of the main application, the Loader service of the browser can monitor the uniform resource locator (Uniform Resource Location, URL), and when the URL changes, the micro-application matching can be performed based on the changed URL, and the micro-application to be loaded is determined in the micro-application to be called (such as micro-application 1, micro-application 2, etc.) based on the matching result, and the activation rule corresponding to the micro-application to be loaded is activated and loaded based on the activation rule corresponding to the micro-application to be loaded.

[0107] The research and development auxiliary system in the embodiment of the present application includes: a main application service and a micro-application service; the main application service includes a main application, and the micro-application service includes several micro-applications; the main application obtains the research and development application configuration, and determines the micro-application to be registered based on the research and development application configuration; the main application registers the micro-application in the micro-application service based on the micro-application to be registered, and obtains the micro-application to be called; the main application matches the micro-application based on the monitored uniform resource locator, and determines the micro-application to be loaded in the micro-application to be called based on the matching result. Because it is through the front-end architecture, the on-demand loading of micro-applications is realized based on the base mode, the independent deployment and operation of each sub-application is realized, and the unified integration of resources is realized at the same time, a centralized, integrated, end-to-end tool service is provided, and the use barrier is reduced.

[0108] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the above-mentioned embodiment 1 can be referred to the above introduction, and will not be repeated in the following. Figure 6 .like Figure 6 As shown, in the embodiment of the present application, the method further includes:

[0109] Step S40, when the micro-application to be loaded is activated, the main application determines whether there is a permission identifier in the micro-application to be loaded;

[0110] Step S50, when the permission identifier exists in the micro-application to be loaded, the main application obtains the HTML string in the micro-application to be loaded;

[0111] Step S60, the main application parses the HTML string to obtain the target loading resource of the micro-application to be loaded;

[0112] Step S70: the main application loads the target loading resource.

[0113] It should be noted that when the main application matches the corresponding micro-application to be loaded through the URL, it can first determine whether there is a permission identifier (entry) in the micro-application to be loaded, and if not, an exception is directly thrown. That is, the main application is also used to throw an exception when the permission identifier does not exist in the micro-application to be loaded.

[0114] It needs to be explained that if there is an authority identifier, the main application can issue a fetch request to obtain the HTML string of the micro-application to be loaded. The HTML string may contain a cross-domain configuration that has been set in advance. By parsing the HTML string, collecting inline and external JS and CSS, and processing different types of JS and CSS, the object can be constructed.

[0115] It is understandable that the above-mentioned target loading resources are also the resources required for loading the micro-application, such as CSS, JavaScript (JS), pictures, etc.

[0116] It should be noted that, for external CSS resources, they can be parsed and then introduced through the style tag, and the document object model (DOM) object is returned after the parsing is completed. Specifically, the target loading resources include: external CSS resources;

[0117] The main application is also used to parse the external link CSS resource to obtain a preset tag;

[0118] The main application is further used to generate a document object based on the preset tag and load the document object through a document object model.

[0119] It is understandable that the above-mentioned preset tag is also the above-mentioned style tag. For the externally linked CSS resources, the main application can add them to the DOM object by dynamically creating a style tag, thereby ensuring that the CSS style is loaded and applied before being rendered, thereby avoiding the problem of style flickering.

[0120] It should be noted that for JS, due to the sandbox mode, it will load JS after the loadApp call. Specifically, for external link JS, first you can give the sript an async attribute to avoid blocking the parsing of the document object model, and then execute JS in the requstIdleCallback function interface. Based on the requstIdleCallback function interface, during the rendering process of each frame of the browser, if there is free time, it will execute the callback function passed in, that is, the external link JS.

[0121] Furthermore, in the embodiment of the present application, a self-executing function is designed to wrap the JS string, and then modify the proxy execution of the window, thereby completing the isolation of the sandbox.

[0122] Specifically, the target loading resources also include: external link JS resources;

[0123] The main application is further used to add an asynchronous attribute to the script tag of the external link JS resource to obtain the asynchronous JS resource;

[0124] The main application is also used to execute the asynchronous JS resource based on a preset interface.

[0125] It is understandable that the above-mentioned preset interface is also the above-mentioned requstIdleCallback function interface. In one implementation of the embodiment of the present application, it can also be implemented through the requestAnimalFrame function interface, which means that the browser will call it after each frame is rendered. In the application, the asynchronous JS resources through the requestAnimalFrame function interface will definitely be called, while the asynchronous JS resources through the requstIdleCallback function interface may not be called.

[0126] In one implementation of the embodiment of the present application, the main application is also used to pass instructions and data to the micro-application to be loaded through common components and common functions.

[0127] Specifically, for the component communication mechanism, the public components and public functions in this application can realize resource sharing by issuing from the main application. First, the main application calls through props to pass the instructions and data to be transmitted to the micro-application, and the micro-application can obtain the content passed by the main application and perform corresponding processing. Furthermore, the application can register the micro-application globally.

[0128] In one implementation of the embodiment of the present application, the data layer can use a MySQL database and perform data search through an ElasticSearch data search engine. The web layer can use a Vue framework, in which system functions can be implemented through Vuex, VueRouter, HTML5, CSS, JavaScript, etc.

[0129] It should be noted that the service layer can be connected to the Web layer through GateWay, and the service layer can be provided with a ZA21 framework and multiple API interfaces to implement functions such as user information, menu permissions, integrated tools, and tracking records. Through the communication interface in the API interface, communication with external applications or systems can be achieved, and through the database interface in the API interface, data interaction with the data layer can be achieved.

[0130] In one implementation of an embodiment of the present application, the microservices that the service layer can provide may include an embedded machine, a micro-steward, a general authority management platform, a one-number system, an all-in-one public service, a Beidou log system, etc., and the embodiment of the present application does not limit this.

[0131] In the embodiment of the present application, when the micro-application to be loaded is activated, the main application determines whether there is a permission identifier in the micro-application to be loaded; when the main application has a permission identifier in the micro-application to be loaded, the main application obtains the HTML string in the micro-application to be loaded; the main application parses the HTML string to obtain the target loading resource of the micro-application to be loaded; the main application loads the target loading resource. By verifying the existence of the permission identifier, the present application ensures that the micro-application can be safely and efficiently loaded and rendered in the main application, thereby improving the integration capability of the system.

[0132] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.

Claims

1. A research and development support system, characterized in that: The R&D auxiliary system includes: main application service and micro application service; The main application service includes a main application, and the micro application service includes a plurality of micro applications; The main application is used to obtain the R&D application configuration and determine the micro application to be registered based on the R&D application configuration; The main application is further used to register a micro-application in the micro-application service based on the micro-application to be registered, and obtain the micro-application to be called; The main application is further used to match micro-applications based on the monitored uniform resource locator, and determine the micro-application to be loaded from the micro-applications to be called based on the matching result.

2. The research and development support system according to claim 1, characterized in that: The main application is further used to determine whether there is a permission identifier in the micro-application to be loaded when the micro-application to be loaded is activated; The main application is further used to obtain the HTML string in the micro-application to be loaded when the permission identifier exists in the micro-application to be loaded; The main application is further used to parse the HTML string to obtain the target loading resource of the micro-application to be loaded; The main application is also used to load the target loading resource.

3. The research and development support system as claimed in claim 2, characterized in that: The target loading resources include: external link CSS resources; The main application is also used to parse the external link CSS resource to obtain a preset tag; The main application is further used to generate a document object based on the preset tag and load the document object through a document object model.

4. The research and development support system as claimed in claim 2, characterized in that: The target loading resources also include: external link JS resources; The main application is further used to add an asynchronous attribute to the script tag of the external link JS resource to obtain the asynchronous JS resource; The main application is also used to execute the asynchronous JS resource based on a preset interface.

5. The research and development support system according to claim 1, characterized in that: The main application is also used to transfer instructions and data to the micro-application to be loaded through common components and common functions.

6. The research and development support system as claimed in claim 2, characterized in that: The main application is further configured to throw an exception when the permission identifier does not exist in the micro-application to be loaded.

7. A research and development assistance method, characterized in that: The method is applied to the research and development support system according to any one of claims 1 to 6, and the method comprises: The main application obtains the R&D application configuration, and determines the micro-application to be registered based on the R&D application configuration; The main application registers a micro-application in the micro-application service based on the micro-application to be registered, and obtains the micro-application to be called; The main application matches micro-applications based on the monitored uniform resource locators, and determines the micro-application to be loaded from the micro-applications to be called based on the matching result.

8. The research and development assistance method according to claim 7, characterized in that: The method further comprises: When the micro-application to be loaded is activated, the main application determines whether there is a permission identifier in the micro-application to be loaded; When the permission identifier exists in the micro-application to be loaded, the main application obtains the HTML string in the micro-application to be loaded; The main application parses the HTML string to obtain the target loading resource of the micro-application to be loaded; The main application loads the target loading resource.

9. The research and development assistance method according to claim 8, characterized in that: The target loading resource includes: an external CSS resource; the step of the main application loading the target loading resource includes: The main application parses the external link CSS resource to obtain a preset tag; The main application generates a document object based on the preset tag, and loads the document object through a document object model.

10. The research and development assistance method according to claim 8, characterized in that: The target loading resource also includes: an external link JS resource; the step of the main application loading the target loading resource also includes: The main application adds an asynchronous attribute to the script tag of the external link JS resource to obtain the asynchronous JS resource; The main application executes the asynchronous JS resource based on a preset interface.