Control system and method for realizing compatibility of multiple browsers based on proxy technology

Through the method based on proxy technology and WebSocket communication, the problem of invisible compatibility of business systems running IE-dependent business systems in modern browsers is solved, and the transparency and fluency of user experience is achieved, and maintenance costs are reduced.

CN120011101APending Publication Date: 2025-05-16JIANGSU ANJI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510050454.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-13
Publication Date
2025-05-16

AI Technical Summary

Technical Problem

The existing technology cannot achieve invisible compatibility. Users need to manually operate or install plug-ins to run IE-dependent business systems in modern browsers, resulting in poor user experience and high maintenance costs.

Method used

Using a method based on proxy technology and WebSocket communication, through the proxy service module and Websocket service module, traffic is captured and forwarded, and the WebSocket client page is returned to a modern browser, and the user operations are mapped in real time and screenshot data is returned to the IE browser.

Benefits of technology

It realizes a web page system that relies on IE in a senseless adaptable manner in modern browsers, maintains the transparency and fluency of user experience, reduces maintenance costs, and enhances security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120011101A_ABST
    Figure CN120011101A_ABST
Patent Text Reader

Abstract

The invention relates to a control system and method for realizing compatibility of multiple browsers based on a proxy technology, and belongs to the technical field of computers, the system realizes real non-inductive compatibility through a transparent proxy technology and WebSocket communication, namely, the system can realize multi-browser compatibility on the premise of not modifying an existing service system, and the compatibility of multiple browsers is improved. The compatibility of a modern browser to a webpage system only supporting an IE browser is realized. The technology is suitable for various webpage applications depending on the IE technology, especially enterprise internal systems using ActiveX controls, old JavaScript engines and the like, completely transparent user experience is achieved, automatic shunting processing is achieved, and safety is enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to a control system and method for achieving multi-browser compatibility based on proxy technology, and belongs to the field of computer technology. Background Art

[0002] With the rapid development of Internet technology, modern browsers such as Chrome, Firefox, and Safari have gradually become mainstream. Compared with the old IE (Internet Explorer) browser, modern browsers have obvious advantages in security, performance, and development ecology. Therefore, many companies and users have gradually phased out the IE browser. However, some enterprise systems still rely on web applications based on technologies such as ActiveX, which can only run normally in the IE browser. If modern browsers are forced to be used, these business systems cannot be loaded, causing the daily business of enterprise users to be affected.

[0003] In order to ensure that modern browsers are compatible with business systems running in IE browsers, the following two methods are proposed:

[0004] 1. Compatibility is achieved through IE kernel simulation. At this time, users are usually required to install specific plug-ins in modern browsers to simulate the IE kernel or implement related functions in modern browsers. However, such plug-ins are often only applicable to some modern browsers and cannot fully support all mainstream browsers. In addition, users still need to manually activate the compatibility mode when visiting compatible websites, which not only increases the complexity of the operation, but also breaks the smooth browsing experience. The solution that relies on this plug-in limits the user's freedom of use, causing users to face many inconveniences when browsing.

[0005] 2. Achieve compatibility through dual-core browser switching. At this time, some dual-core browsers have the function of switching to the IE kernel to handle specific compatibility requirements. Although this method supports IE dependence to a certain extent, users still need to manually switch the kernel or force the use of a specific browser to access the business system. This process not only increases the operation steps, but also limits the user's freedom to choose a browser, reducing the smoothness of the overall user experience.

[0006] The common problem of the above existing technologies is that they cannot achieve seamless compatibility, that is, users still need to perform manual operations or access through dedicated tools in specific scenarios, which destroys the consistent experience of the browser. In addition, this user-perceived solution cannot fully meet business needs, especially in large enterprise environments. Frequent plug-in updates and software maintenance increase the workload of IT management, and may also lead to potential security risks and increase maintenance costs. Summary of the invention

[0007] This application provides a control method, device and storage medium for achieving multi-browser compatibility based on proxy technology, which can adapt webpage systems that only support IE technology in modern browsers without any sense. Through proxy technology and WebSocket feedback mechanism, not only the compatibility with the old business system is ensured, but also the transparency of the user access process is maintained. Users do not need to change the browser or install any plug-ins, and their original operating habits are completely maintained. This application provides the following technical solutions:

[0008] In a first aspect, a control system for achieving multi-browser compatibility based on proxy technology is provided, the system comprising:

[0009] A modern browser is used to obtain the address of the business system input by the user and initiate an access request; capture the traffic sent to the preset business system through a local port forwarding module; if the captured traffic includes a request, forward the traffic to the first listening port of the proxy service module;

[0010] The proxy service module is used to determine whether the traffic is from the IE browser after receiving the traffic forwarded by the port forwarding module through the first listening port; if the traffic is from a non-IE browser, return a WebSocket client page to the modern browser, wherein the WebSocket client page includes a Canvas canvas;

[0011] The modern browser is also used to initialize the WebSocket connection after loading the WebSocket client page to establish a connection with the WebSocket service module; monitor the Canvas canvas to capture the user's operation events, and transmit the operation events to the WebSocket service module through the WebSocket connection;

[0012] The Websocket service module is used for mapping the operation event to a locally preset IE control when the operation event is monitored through the second monitoring port, and the IE control is used to simulate the behavior of the IE browser; regularly taking screenshots of the IE control, and returning the screenshot data corresponding to the screenshot to the modern browser through the WebSocket connection;

[0013] The modern browser is also used to display the user page corresponding to the screenshot data on the Canvas canvas after receiving the screenshot data through the WebSocket connection.

[0014] Optionally, the proxy service module is further used to: when the traffic comes from the IE browser, establish an HTTP tunnel with the proxy server and forward the traffic, so as to forward the user's actual request traffic to the business system through the tunnel.

[0015] Optionally, the IE control is a WebBrowser control in a local WinForms application of the Websocket service module.

[0016] Optionally, the first listening port is: 127.0.0.1:54032; the second listening port is 127.0.0.1:54031.

[0017] Optionally, the Websocket service module uses a graphics device interface (GDI) for optimization during the process of regularly taking screenshots of the IE control.

[0018] Optionally, returning the screenshot data corresponding to the screenshot to the modern browser through the WebSocket connection includes:

[0019] Convert the screenshot into Base64 encoding format to obtain the screenshot data;

[0020] The screenshot data is returned to the modern browser via the WebSocket connection.

[0021] Optionally, displaying a user page corresponding to the screenshot data on the Canvas canvas includes:

[0022] Parse the screenshot data in Base64 encoding format to obtain the parsed image;

[0023] The image is drawn to the Canvas canvas to update the user page in real time.

[0024] Optionally, determining whether the traffic comes from an IE browser includes:

[0025] Determine whether the traffic comes from the IE browser based on the User-Agent in the request.

[0026] In a second aspect, a control method for achieving multi-browser compatibility based on proxy technology is provided, the method comprising:

[0027] Obtain the address of the business method input by the user through a modern browser and initiate an access request; capture the traffic sent to the preset business method through a local port forwarding module; if the captured traffic includes a request, forward the traffic to the first listening port of the proxy service module;

[0028] After receiving the traffic forwarded by the port forwarding module through the first listening port of the proxy service module, determining whether the traffic comes from the IE browser; if the traffic comes from a non-IE browser, returning a WebSocket client page to the modern browser, wherein the WebSocket client page includes a Canvas canvas;

[0029] After the WebSocket client page is loaded through the modern browser, a WebSocket connection is initialized to establish a connection with the WebSocket service module; the Canvas captures the user's operation events, and transmits the operation events to the WebSocket service module through the WebSocket connection;

[0030] When the operation event is monitored through the second monitoring port of the Websocket service module, the operation event is mapped to a locally preset IE control, and the IE control is used to simulate the behavior of the IE browser; screenshots of the IE control are taken regularly, and screenshot data corresponding to the screenshots are returned to the modern browser through the WebSocket connection;

[0031] After receiving the screenshot data based on the WebSocket connection through a modern browser, a user page corresponding to the screenshot data is displayed on the Canvas canvas.

[0032] Optionally, the method further comprises:

[0033] In the case where the traffic comes from the IE browser, an HTTP tunnel is established with the proxy server and the traffic is forwarded, so as to forward the user's actual request traffic to the business system through the tunnel.

[0034] The beneficial effects of this application include:

[0035] 1. Completely transparent user experience: With transparent proxy technology, users do not need to install any plug-ins on their browsers, and the access process is the same as accessing the original site, achieving true "senseless adaptation". Users can continue to use their accustomed modern browsers, without having to keep IE browsers for certain business systems or install specific browser plug-ins.

[0036] 2. Automatic diversion processing: It only performs proxy operations for specific sites, can identify and distinguish user access requests, and only performs proxy operations on specific sites that rely on the IE kernel. For ordinary sites that do not require compatible processing, the request will be directly sent to the actual business server without any proxy processing. This can avoid unnecessary delays in accessing ordinary sites.

[0037] 3. Enhanced security: Modern browsers are far superior to IE browsers in terms of security. The present invention allows users to use the security functions of modern browsers without relying on IE, while maintaining access to old systems based on ActiveX technology.

[0038] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application and implement it according to the contents of the specification, the following is a detailed description of the preferred embodiments of the present application in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] Figure 1 It is a block diagram of a control system for realizing multi-browser compatibility based on proxy technology provided by an embodiment of the present application;

[0040] Figure 2 This is a flowchart of a control method for achieving multi-browser compatibility based on proxy technology provided by an embodiment of the present application. DETAILED DESCRIPTION

[0041] The specific implementation methods of the present application are further described in detail below in conjunction with the accompanying drawings and examples. The following examples are used to illustrate the present application but are not intended to limit the scope of the present application.

[0042] The common problem of the prior art is that they are unable to achieve seamless compatibility, that is, users still need to perform manual operations or access through special tools in specific scenarios, which destroys the consistent experience of the browser and has high maintenance costs. Unlike the prior art, the present invention achieves true seamless compatibility through transparent proxy technology and WebSocket communication, that is, it can achieve the compatibility of modern browsers with web page systems that only support IE browsers without modifying the existing business system. This technology is suitable for all kinds of web applications that rely on IE technology, especially internal enterprise systems that use ActiveX controls, old versions of JavaScript engines, etc.

[0043] Figure 1 This is a block diagram of a control system for implementing multi-browser compatibility based on proxy technology provided by an embodiment of the present application. The system at least includes: a modern browser 110 and an IE compatible module 120.

[0044] The modern browser 110110 refers to a browser different from the IE browser, and is used for users to access the business system. The user can enter the address of the business system in the modern browser 110 and initiate an access request.

[0045] Accordingly, the modern browser 110110 includes a local port forwarding module 111. In this embodiment, the modern browser 110 is used to capture specific site requests and redirect traffic. Specifically, the modern browser 110110 is used to obtain the address of the business system input by the user and initiate an access request; capture the traffic sent to the preset business system through the local port forwarding module; when the captured traffic includes a request, forward the traffic to the first listening port of the proxy service module. Exemplarily, the first listening port is: 127.0.0.1:54032.

[0046] The IE compatible module 120 includes: a proxy service module and a Websocket service module.

[0047] The proxy service module is used to divert the captured traffic. In order to avoid the loop problem of traffic, the local listening port (127.0.0.1:54032) of the proxy service module will first determine the source of the traffic after receiving the traffic from the port forwarding module. Specifically, the proxy service module is used to determine whether the traffic comes from the IE browser after receiving the traffic forwarded by the port forwarding module through the first listening port; if the traffic comes from a non-IE browser, the WebSocket client page is returned to the modern browser 110, and the WebSocket client page includes a Canvas canvas.

[0048] Exemplarily, determining whether the traffic comes from the IE browser includes: determining whether the traffic comes from the IE browser according to a User-Agent in the request.

[0049] Optionally, the proxy service module is also used for: when the traffic comes from the IE browser, it means that the request comes directly from the IE browser or from the IE control held in the IE compatible module. At this time, an HTTP tunnel is established between the proxy service module and the proxy server and traffic is forwarded to forward the user's actual request traffic to the business system through the tunnel.

[0050] Afterwards, browser event mapping and canvas rendering are performed through the interaction between the Websocket service module and the WebSocket client. Once the modern browser 110 successfully establishes a WebSocket connection with the Websocket server, the interaction of the entire system begins to be handled by the WebSocket service module.

[0051] The WebSocket service module runs on the second listening port, and illustratively, the second listening port is 127.0.0.1:54031. The main function of the second listening port is to perform two-way communication with the WebSocket client in the modern browser 110 to achieve real-time transmission of user operations and dynamic update of page screenshots.

[0052] Specifically, the modern browser 110 is also used to initialize the WebSocket connection after loading the WebSocket client page to establish a connection with the WebSocket service module; monitor the Canvas canvas to capture the user's operation events, and transmit the operation events to the WebSocket service module through the WebSocket connection. The operation events include but are not limited to: mouse clicks, keyboard inputs, etc., and this embodiment does not limit the type of operation events.

[0053] The Websocket service module is used to map the operation event to the local preset IE control when the operation event is monitored through the second monitoring port, and the IE control is used to simulate the behavior of the IE browser. Through this mapping mechanism, the user's operation in the modern browser 110 can be transmitted in real time and act on the business system page, ensuring a seamless user experience.

[0054] In one example, the IE control is a WebBrowser control in a local WinForms application of a Websocket service module.

[0055] The WebBrowser control is a control in Windows Forms applications that allows developers to embed a browser window in their own applications. This control provides the ability to browse web pages and can be used to display HTML content, navigate to different URLs, and execute JavaScript scripts. The WebBrowser control is built on Internet Explorer technology, so it is similar to Internet Explorer in terms of functionality and compatibility.

[0056] In order to display the content of the business system in the modern browser 110, the Websocket service module is also used to regularly take screenshots of the IE control and return the screenshot data corresponding to the screenshot to the modern browser 110 through the WebSocket connection.

[0057] Optionally, the Websocket service module uses a Graphics Device Interface (GDI) for optimization during the process of regularly taking screenshots of the IE control.

[0058] Optionally, returning screenshot data corresponding to the screenshot to the modern browser 110 via the WebSocket connection includes: converting the screenshot into a Base64 encoding format to obtain the screenshot data; and returning the screenshot data to the modern browser 110 via the WebSocket connection.

[0059] The modern browser 110 is also used to display the user page corresponding to the screenshot data on the Canvas canvas after receiving the screenshot data through the WebSocket connection.

[0060] Optionally, displaying a user page corresponding to the screenshot data on a Canvas canvas includes: parsing the screenshot data in a Base64 encoding format to obtain a parsed image; and drawing the image to the Canvas canvas to update the user page in real time.

[0061] In summary, the control system based on proxy technology to achieve multi-browser compatibility provided by this embodiment has the following significant advantages:

[0062] 1. Completely transparent user experience: With transparent proxy technology, users do not need to install any plug-ins on their browsers, and the access process is the same as accessing the original site, achieving true "senseless adaptation". Users can continue to use their accustomed modern browsers, without having to keep IE browsers for certain business systems or install specific browser plug-ins.

[0063] 2. Automatic diversion processing: It only performs proxy operations for specific sites, can identify and distinguish user access requests, and only performs proxy operations on specific sites that rely on the IE kernel. For ordinary sites that do not require compatible processing, the request will be directly sent to the actual business server without any proxy processing. This can avoid unnecessary delays in accessing ordinary sites.

[0064] 3. Enhanced security: Modern browsers are far superior to IE browsers in terms of security. The present invention allows users to use the security functions of modern browsers without relying on IE, while maintaining access to old systems based on ActiveX technology.

[0065] Figure 2 This is a flow chart of a control method for implementing multi-browser compatibility based on proxy technology provided by an embodiment of the present application. The method includes at least the following steps:

[0066] Step 201, obtaining the address of the business method input by the user through a modern browser and initiating an access request; capturing the traffic sent to the preset business method through a local port forwarding module; and forwarding the traffic to the first listening port of the proxy service module when the captured traffic includes a request;

[0067] Step 202, after receiving the traffic forwarded by the port forwarding module through the first listening port of the proxy service module, determine whether the traffic comes from the IE browser; if the traffic comes from a non-IE browser, return a WebSocket client page to the modern browser, and the WebSocket client page includes a Canvas canvas;

[0068] Optionally, when the traffic comes from an IE browser, an HTTP tunnel is established with the proxy server and the traffic is forwarded, so that the user's actual request traffic is forwarded to the business system through the tunnel.

[0069] Step 203, after loading the WebSocket client page through a modern browser, initialize the WebSocket connection to establish a connection with the WebSocket service module; monitor the Canvas canvas to capture the user's operation events, and transmit the operation events to the WebSocket service module through the WebSocket connection;

[0070] Step 204, when an operation event is monitored through the second monitoring port of the Websocket service module, the operation event is mapped to a locally preset IE control, and the IE control is used to simulate the behavior of the IE browser; screenshots of the IE control are taken regularly, and the screenshot data corresponding to the screenshot is returned to the modern browser through the WebSocket connection;

[0071] Step 205: After receiving the screenshot data through a modern browser based on a WebSocket connection, a user page corresponding to the screenshot data is displayed on a Canvas canvas.

[0072] In summary, the control method for achieving multi-browser compatibility based on proxy technology provided in this embodiment can achieve true seamless compatibility through transparent proxy technology and WebSocket communication.

[0073] Optionally, the present application also provides a computer-readable storage medium, in which a program is stored, and the program is loaded and executed by a processor to implement the control method for achieving multi-browser compatibility based on proxy technology in the above method embodiment.

[0074] Optionally, the present application also provides a computer product, which includes a computer-readable storage medium, in which a program is stored, and the program is loaded and executed by a processor to implement the control method for achieving multi-browser compatibility based on proxy technology in the above method embodiment.

[0075] The technical features of the above-described embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of the technical features in the above-described embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0076] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the attached claims.

Claims

1. A control system based on proxy technology to achieve multi-browser compatibility, characterized in that: The system comprises: A modern browser is used to obtain the address of the business system input by the user and initiate an access request; capture the traffic sent to the preset business system through a local port forwarding module; if the captured traffic includes a request, forward the traffic to the first listening port of the proxy service module; The proxy service module is used to determine whether the traffic is from the IE browser after receiving the traffic forwarded by the port forwarding module through the first listening port; if the traffic is from a non-IE browser, return a WebSocket client page to the modern browser, wherein the WebSocket client page includes a Canvas canvas; The modern browser is also used to initialize the WebSocket connection after loading the WebSocket client page to establish a connection with the WebSocket service module; monitor the Canvas canvas to capture the user's operation events, and transmit the operation events to the WebSocket service module through the WebSocket connection; The Websocket service module is used for mapping the operation event to a locally preset IE control when the operation event is monitored through the second monitoring port, and the IE control is used to simulate the behavior of the IE browser; regularly taking screenshots of the IE control, and returning the screenshot data corresponding to the screenshot to the modern browser through the WebSocket connection; The modern browser is also used to display the user page corresponding to the screenshot data on the Canvas canvas after receiving the screenshot data through the WebSocket connection.

2. The system according to claim 1, characterized in that The proxy service module is also used to: when the traffic comes from the IE browser, establish an HTTP tunnel with the proxy server and forward the traffic, so as to forward the user's actual request traffic to the business system through the tunnel.

3. The system according to claim 1, characterized in that The IE control is a WebBrowser control in the local WinForms application of the Websocket service module.

4. The system according to claim 1, characterized in that The first listening port is: 127.0.0.1:54032; the second listening port is 127.0.0.1:54031.

5. The system according to claim 1, characterized in that The Websocket service module uses the Graphics Device Interface (GDI) for optimization during the process of regularly taking screenshots of the IE control.

6. The system according to claim 1, characterized in that The step of returning the screenshot data corresponding to the screenshot to the modern browser through the WebSocket connection includes: Convert the screenshot into Base64 encoding format to obtain the screenshot data; The screenshot data is returned to the modern browser via the WebSocket connection.

7. The system according to claim 6, characterized in that Displaying the user page corresponding to the screenshot data on the Canvas canvas includes: Parse the screenshot data in Base64 encoding format to obtain the parsed image; The image is drawn to the Canvas canvas to update the user page in real time.

8. The system according to any one of claims 1 to 7, characterized in that: The determining whether the traffic comes from the IE browser includes: Determine whether the traffic comes from the IE browser based on the User-Agent in the request.

9. A control method for achieving multi-browser compatibility based on proxy technology, characterized in that: The method comprises: Obtain the address of the business method input by the user through a modern browser and initiate an access request; capture the traffic sent to the preset business method through a local port forwarding module; if the captured traffic includes a request, forward the traffic to the first listening port of the proxy service module; After receiving the traffic forwarded by the port forwarding module through the first listening port of the proxy service module, determining whether the traffic comes from the IE browser; if the traffic comes from a non-IE browser, returning a WebSocket client page to the modern browser, wherein the WebSocket client page includes a Canvas canvas; After the WebSocket client page is loaded through the modern browser, a WebSocket connection is initialized to establish a connection with the WebSocket service module; the Canvas captures the user's operation events, and transmits the operation events to the WebSocket service module through the WebSocket connection; When the operation event is monitored through the second monitoring port of the Websocket service module, the operation event is mapped to a locally preset IE control, and the IE control is used to simulate the behavior of the IE browser; screenshots of the IE control are taken regularly, and screenshot data corresponding to the screenshots are returned to the modern browser through the WebSocket connection; After receiving the screenshot data based on the WebSocket connection through a modern browser, a user page corresponding to the screenshot data is displayed on the Canvas canvas.

10. The method according to claim 9, characterized in that The method further comprises: In the case where the traffic comes from the IE browser, an HTTP tunnel is established with the proxy server and the traffic is forwarded, so as to forward the user's actual request traffic to the business system through the tunnel.