Detailed Description
The present disclosure is described in further detail below with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the relevant invention and not restrictive of the invention. It should be noted that, for convenience of description, only the portions related to the related invention are shown in the drawings.
It should be noted that, in the present disclosure, the embodiments and features of the embodiments may be combined with each other without conflict. The present disclosure will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
Fig. 1 shows an exemplary architecture 100 to which the method for acquiring preset service information or the apparatus for acquiring preset service information of the present disclosure may be applied.
As shown in fig. 1, system architecture 100 may include end devices 101, 102, 103, network 104 and background server cluster 105 and configuration server 106. The network 104 is used to provide a medium of communication links between the terminal devices 101, 102, 103 and the background server cluster 105 and the configuration server 106. Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
The terminal devices 101, 102, 103 interact with the background server cluster 105 and the configuration server 106 via the network 104 to receive or send messages or the like. The terminal devices 101, 102, 103 may have installed thereon various communication client applications, such as a web browser application, a shopping-type application, a search-type application, an instant messaging tool, a mailbox client, and the like.
The terminal apparatuses 101, 102, and 103 may be hardware or software. When the terminal devices 101, 102, 103 are hardware, they may be various electronic devices having a display screen and supporting human-computer interaction, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like. When the terminal apparatuses 101, 102, 103 are software, they can be installed in the electronic apparatuses listed above. It may be implemented as multiple pieces of software or software modules (e.g., software or software modules used to provide distributed services) or as a single piece of software or software module. And is not particularly limited herein.
The background server cluster 105 may comprise servers providing various services, such as background servers providing support for applications installed on the terminal devices 101, 102, 103. Backend server 1051 may be a gateway server for applications. Typically, all network requests for an application installed on a terminal pass through the gateway server corresponding to the application. The network server may distribute the service request to the service server (e.g., servers 1052, 1053 in fig. 1) to which the application corresponds. The gateway server may analyze and process the received network request, and feed back a generated processing result (e.g., an information display identifier indicating whether the application program displays preset service information) to the terminal devices 101, 102, and 103.
The configuration server 106 may be used to store specific preset service information, such as a service stop announcement, forced upgrade information, and the like. The terminal devices 101, 102, and 103 may obtain specific preset service information from the configuration server 106 after obtaining the information display identifier.
The server may be hardware or software. When the server is hardware, it may be implemented as a distributed server cluster formed by multiple servers, or may be implemented as a single server. When the server is software, it may be implemented as multiple pieces of software or software modules (e.g., software or software modules used to provide distributed services), or as a single piece of software or software module. And is not particularly limited herein.
It should be noted that the method for acquiring the preset service information provided by the embodiment of the present disclosure is generally performed by the terminal devices 101, 102, and 103, and accordingly, the apparatus for acquiring the preset service information is generally disposed in the terminal devices 101, 102, and 103.
It should be further noted that the method for sending the information presentation identifier provided by the embodiment of the present disclosure is generally performed by the server 1051, and accordingly, the apparatus for sending the information presentation identifier is generally disposed in the server 1051.
It should be understood that the number of terminal devices, networks, and servers in fig. 1 is merely illustrative. There may be any number of terminal devices, networks, and servers, as desired for implementation.
With continuing reference to fig. 2, a flow 200 of one embodiment of a method for obtaining preset service information in accordance with the present disclosure is shown. The method for acquiring the preset service information comprises the following steps:
step 201, a first network request is sent to a gateway server corresponding to a target application installed in a terminal.
In this embodiment, an execution main body (such as the terminal devices 101, 102, 103 shown in fig. 1) of the method for acquiring the preset service information may send the first network request to a gateway server corresponding to a target application installed in the execution main body in a wired connection manner or a wireless connection manner. The first network request may include version information of the target application. The version information may include a version number of the application program formally online, for example, 1.1.0,1.2.0, and the like. The target application may be any application that is specified in advance according to actual application requirements, or may be an application that is specified according to rules (for example, applications belonging to the same category). Generally, the application program may be installed in a fixed terminal (e.g., a personal computer) or a mobile terminal (e.g., a smart phone), and will not be described herein again.
It should be noted that, in general, all network requests of the target application pass through the gateway server corresponding to the target application. The gateway server side can distribute the network request to corresponding servers in the background server cluster. The above-mentioned application installed on the terminal, the corresponding gateway server and the architecture of the background server cluster belong to the well-known technologies widely studied and applied at present, and are not described herein again.
In some optional implementation manners of this embodiment, the network request may further include operating system information of the target application program. The operating system information may be used to indicate different operating systems. The operating system may include, but is not limited to, at least one of: iOS systems, Android (Android) systems, saiban systems, etc. The network request may include the first network request and a second network request hereinafter.
Based on the optional implementation manner, the method for acquiring the preset service information can be respectively set for the application programs running in different operating systems, so that the flexibility is improved.
In some optional implementations of this embodiment, the network request may also follow a network security protocol. The network Security protocol may include SSL (Secure Sockets Layer) and/or TLS (Transport Layer Security) Security protocol.
Step 202, receiving feedback information matched with the first network request.
In this embodiment, the execution main body may receive the feedback information matched with the first network request sent in step 201 in various ways. As an example, the execution main body may receive the feedback information from a different electronic device that is communicatively connected according to a difference in the type and content of the first network request.
In some optional implementation manners of this embodiment, based on that the feedback information includes an information display identifier used to indicate whether the target application program displays preset service information, the execution main body may receive the feedback information including the information display identifier sent by the gateway server.
Based on the optional implementation manner, the information display identifier can be used as one of response information of the first network request, so that the instantaneity of obtaining the information display identifier is greatly improved.
In some optional implementation manners of this embodiment, based on that the first network request follows a network security protocol, the feedback information includes error notification information indicating that a certificate is invalid, and the execution subject may receive the error notification information sent by a network security service corresponding to the first network request. The network security server may include, for example, a server providing relevant services of SSL and/or TLS security protocols.
Based on the above optional implementation manner, the execution subject may identify that the certificate is invalid according to the received feedback information.
Step 203, determining an information acquisition mode matched with the sending end of the feedback information.
In this embodiment, the execution main body may determine an information acquisition manner matched with the sending end of the feedback information received in step 202 in various manners. As an example, the execution body may store a relationship table of correspondence between a sending end of the feedback information and an information acquisition method in advance. The executing entity may first determine the sending end of the feedback information received in step 202, and then may determine a matching information obtaining manner according to the relationship table.
In some optional implementation manners of this embodiment, in response to determining that the sending end of the feedback information is the gateway server, the executing body may determine the following steps as an information obtaining manner matched with the gateway server:
firstly, extracting information display identification from the feedback information.
In these implementations, based on that the feedback information includes an information display identifier indicating whether the target application program displays preset service information, the execution main body may extract the information display identifier from the feedback information received in step 202. The information display identifier may include various forms, for example, "1", "0" or "on" or "off" respectively represents displaying and not displaying the preset service information. In practice, the information presentation identifier may correspond to actionData, and the json data format may be { "address": main/update "}.
And secondly, in response to the fact that the information display identifier is used for indicating the target application program to display the preset service information, acquiring the preset service information matched with the information display identifier from the configuration end.
In these implementations, in response to determining that the information display identifier is used to indicate the target application program to display the preset service information, the execution main body may obtain the preset service information matching the information display identifier from a configuration end corresponding to the preset service information. As an example, the execution main body may send a preset service information acquisition request to the corresponding configuration end, and the corresponding configuration end may send the matched preset service information to the execution main body after receiving the preset service information acquisition request. The preset service information may include various information for contacting an application program of the terminal. It may include, but is not limited to, at least one of the following: reminding the update information, stopping the service information and forcibly upgrading the information.
In these implementations, the configuration end may store a corresponding relationship between the version information of each application program and the preset service information. Optionally, the correspondence may further include operating system information of the application program. Optionally, the corresponding relationship may further include a corresponding relationship between version information of each application program and an information display identifier, so that the gateway server may obtain the corresponding relationship table from the configuration end.
Based on the optional implementation manner, the execution main body may obtain the specific preset service information to be displayed from the specified configuration end after obtaining the information display identifier for indicating the target application program to display the preset service information from the gateway server end.
In some optional implementation manners of this embodiment, in response to determining that the sending end of the feedback information is the network security server, the executing body may determine the following steps as an information obtaining manner matched with the gateway server:
first, a second network request is sent to a configuration end.
In these implementations, the execution body may send the second network request to the configuration end by a wired or wireless connection. The second network request may include version information of the target application. The second network request typically does not pass through the network security server. As an example, the first network request may be an http request, and the second network request may be an http request.
And secondly, receiving preset service information sent by a configuration end.
In these implementations, the execution main body may receive preset service information sent by the configuration end.
In these implementations, the configuration end may store a corresponding relationship between the version information of each application program and the preset service information. Optionally, the correspondence may further include operating system information of the application program.
Based on the optional implementation manner, the execution main body can directly acquire the preset service information from the configuration end under the condition that the information display identifier cannot be acquired from the gateway server end. Therefore, the preset service information can still be acquired under the condition that the https certificate is out of date due to being placed locally and the like.
And 204, acquiring the preset service information from the configuration end corresponding to the preset service information in an information acquisition mode.
In this embodiment, the executing entity may obtain the preset service information from the configuration end corresponding to the preset service information by using the information obtaining manner determined in step 203. The description of the configuration end may be consistent with the description of the foregoing steps, and is not repeated here.
In some optional implementations of this embodiment, the executing body may further execute the following steps:
firstly, generating a display page according to preset service information.
In these implementation manners, the execution main body may generate a display page according to the preset service information obtained in step 204. The display page may include the acquired preset service information.
Optionally, the preset service information may include service suspension information.
Optionally, the preset service information may include forced upgrade information.
And secondly, displaying a display page.
In these implementations, the execution body may display the presentation page generated in the first step in various ways. As an example, the execution main body may display the generated presentation page in a manner that allows or disallows the user to perform other operations on the application program according to a priority order of the preset service information.
Optionally, the execution body may display the display page in a pop-up window form. Wherein, the display page may include a service stop announcement. Optionally, the execution main body may further display the presentation page in a pop-up form covering the entire application page, so as to block other operations performed on the application by the user.
Optionally, the display page may further include a first determination button. In response to detecting that the first determination button is clicked, the execution subject may close the target application.
Optionally, the execution subject may display the presentation page in a pop-up window form, where the presentation page may include a forced upgrade notice. Optionally, the execution main body may also display the display page in a pop-up form covering the entire application page, so as to block other operations performed on the application by the user.
Optionally, the display page may further include a cancel button and a second confirm button. The executing main body can further continue to execute the following steps:
in a first step, the target application is closed in response to detecting that the cancel button is clicked.
And in a second step, responding to the detection that the second determination button is clicked, and jumping to an upgrading version description page of the target application program.
In these implementations, the upgraded version description page of the target application may include, for example, a detail page or a download page of the upgraded version of the target application in the application mall.
Based on the optional implementation manner, the execution main body may display the acquired preset service information and interact with the user through the generated display page.
In the method provided by the above embodiment of the present disclosure, by receiving the feedback information matched with the sent network request, acquiring the preset service information from the corresponding configuration end according to the feedback information, and using the preset service information as one of the response information of the network request, it is achieved that the preset service information can be acquired on the premise that the configuration end is configured with the preset service information as long as there is a sending of the network request no matter whether the terminal application program is running or not and whether the notification authority is turned on, so that the instantaneity of acquiring the preset service information is greatly improved.
With continued reference to fig. 3, a flow 300 of one embodiment of a method for sending an information presentation identification in accordance with the present disclosure is shown. The method for sending the information display identification comprises the following steps:
step 301, a first network request is received.
In this embodiment, an execution subject (for example, the server 1051 shown in fig. 1) of the method for sending the information presentation identifier may obtain the first network request through a wired connection manner or a wireless connection manner. The first network request may include version information of a target application installed in the terminal.
It should be noted that, the descriptions of the first network request and the target application program may be consistent with the corresponding descriptions in the foregoing embodiments, and are not described herein again.
In some optional implementation manners of this embodiment, the network request may further include operating system information of the target application program. The network request may be consistent with the corresponding description in the foregoing embodiments, and is not described herein again.
Step 302, determining an information display identifier matched with the version information of the target application program according to a preset correspondence table between the version information of the application program and the information display identifier.
In this embodiment, the execution main body may obtain the correspondence table between the version information of the preset application program and the information display identifier in various manners. As an example, the execution agent may obtain the correspondence table from a gateway configuration center corresponding to a gateway server. The gateway configuration center can be used for operators to configure various information related to actual application scenarios. As another example, the execution body may further obtain the corresponding relationship table from a configuration end of the communication connection. The configuration end may store a corresponding relationship between the version information of each application program and the information display identifier. Optionally, the correspondence may further include operating system information of the application program. Optionally, the correspondence may further include a correspondence between version information of each application program and preset service information.
In this embodiment, the execution main body may determine the information display identifier matching the version information of the target application program received in step 301 according to the obtained correspondence table between the preset version information of the application program and the information display identifier. The information display identifier may be used to indicate whether the target application program displays preset service information. The information display identifier may be consistent with the corresponding description in the foregoing embodiments, and is not described herein again.
As an example, the correspondence table may include: version 1.1.8-show recommended update information, version 1.2.0-do not show recommended update information. The execution subject may determine, according to the correspondence table, that the information presentation identifier matching the version information (e.g., version 1.1.8) of the target application program is the presentation recommendation update information.
In some optional implementation manners of this embodiment, the preset service information may include service stopping information and forced upgrade information. The execution main body may determine, in response to determining that the information presentation indicator that matches the version information of the target application in the correspondence table is used to indicate that the target application does not present the out-of-service information, an information presentation indicator that indicates whether the target application presents the forced upgrade information as the information presentation indicator that matches the version information of the target application.
Based on the optional implementation manner, the execution main body can firstly determine whether the service stopping information exists or not, judge whether the forced upgrading information exists or not on the premise that the service stopping information does not exist, better accord with the operation experience of the application program, optimize the process of obtaining the service stopping information and the forced upgrading information by the application program, and improve the efficiency.
In some optional implementation manners of this embodiment, the correspondence table may further include operating system information of the target application program. As an example, the correspondence table may further include: version 1.1.8-android System shows recommended update information-the iOS System does not show recommended update information.
And 303, generating feedback information according to the matched information display identifier.
In this embodiment, the execution subject may generate the feedback information in various ways according to the matching information presentation identifier determined in step 302. As an example, the execution subject may directly generate the feedback information including the matching information presentation identifier. The matched information display identifier may be used to indicate the target application program to display the preset service information, or may be used to indicate the target application program not to display the preset service information.
In some optional implementations of this embodiment, in response to determining that the matching information presentation identifier is used to indicate that the target application program presents the forced upgrade information, the execution subject may generate feedback information including the matching information presentation identifier.
In some optional implementations of this embodiment, in response to determining that the matched information presentation identifier is used to indicate that the target application program does not present the forced upgrade information, the execution subject may further perform the following steps:
first, whether the first network request includes a service request is determined.
In these implementations, in response to determining that the matching information exposure flag is used to indicate that the target application program does not expose the forced upgrade information, the execution main body may determine whether the service request is included in the first network request received in step 301 in various ways. As an example, the execution body may determine whether to include the service request by extracting a specific field from the request body. The service request may be determined according to different application programs. As an example, the service request may include a link to obtain a specified video. As yet another example, the service request may include a specific processing of a certain picture.
And step two, responding to the fact that the first network request comprises the service request, and sending the service request to a service server corresponding to the service request.
In these implementations, in response to determining that the first network request includes a service request, the execution main body may send the service request to a service server corresponding to the service request. As an example, the service server corresponding to the service request may be a video database server. As yet another example, the service end corresponding to the service request may be an image processing server.
And thirdly, receiving a service result fed back by the service server.
In these implementations, the execution main body may receive the service result fed back by the receiving end of the service request in the second step in various manners.
And fourthly, sending the service result to the sending end of the first network request.
In these implementations, the executing entity may send the service result received in the third step to the sending end of the first network request received in the step 301.
Based on the optional implementation manner, the execution main body may continue to process the service flow and feed back the service result to the target application program on the premise that the target application program does not display the service stopping information and the forced upgrading information.
Step 304, sending the feedback information to the sending end requested by the first network.
In this embodiment, the executing entity may send the feedback information generated in step 303 to the sending end of the first network request received in step 301.
According to the method provided by the embodiment of the disclosure, the information display identifier matched with the received network request is generated, and the information display identifier is used as one of the response information of the network request, so that no matter whether the application program of the terminal is operated or not and whether the notification authority is started or not, as long as the network request is sent, the preset service information can be obtained on the premise that the preset service information is configured at the configuration end, and the instantaneity of obtaining the information display identifier is greatly improved. Moreover, the information display identification is configured at the gateway server side instead of the specific information display content, so that the realization complexity of the gateway is reduced, and the service pressure of the gateway is also reduced.
With further reference to fig. 4, as an implementation of the methods shown in the above-mentioned figures, the present disclosure provides an embodiment of an apparatus for acquiring preset service information, where the embodiment of the apparatus corresponds to the embodiment of the method shown in fig. 2, and the apparatus may be specifically applied to various electronic devices.
As shown in fig. 4, the apparatus 400 for acquiring preset service information provided by the present embodiment includes a first sending unit 401, a first receiving unit 402, a first determining unit 403, and an acquiring unit 404. The first sending unit 401 is configured to send a first network request to a gateway server corresponding to a target application installed in a terminal, where the first network request includes version information of the target application; a first receiving unit 402 configured to receive feedback information matching the first network request; a first determining unit 403 configured to determine an information acquisition manner matched with a transmitting end of the feedback information; the obtaining unit 404 is configured to obtain the preset service information from a configuration end corresponding to the preset service information in an information obtaining manner.
In this embodiment, in the apparatus 400 for acquiring preset service information: the specific processing of the first sending unit 401, the first receiving unit 402, the first determining unit 403, and the obtaining unit 404 and the technical effects thereof can refer to the related descriptions of step 201, step 202, step 203, and step 204 in the corresponding embodiment of fig. 2, which are not described herein again.
In some optional implementation manners of this embodiment, the feedback information may include an information display identifier for indicating whether the target application program displays the preset service information. The first receiving unit 402 may be further configured to: and receiving feedback information which is sent by the gateway server and comprises the information display identifier. The first determining unit 403 may be further configured to: in response to determining that the sending terminal is the gateway server, determining the following information acquisition modes as the information acquisition modes matched with the gateway server: extracting an information display identifier from the feedback information; and acquiring the preset service information matched with the information display identifier from the configuration end in response to the fact that the information display identifier is used for indicating the target application program to display the preset service information.
In some optional implementations of this embodiment, the first network request follows a network security protocol. The feedback information may include error notification information indicating certificate failure. The first receiving unit 402 may be further configured to: and receiving error prompt information sent by a network security service terminal corresponding to the first network request. The first determining unit 403 may be further configured to: in response to determining that the sending terminal is the network security server, determining the following information acquisition modes as the information acquisition modes matched with the network security server: sending a second network request to the configuration end, wherein the second network request comprises the version information of the target application program and does not pass through the network security service end; and receiving preset service information sent by a configuration end.
In some optional implementation manners of this embodiment, the network request may further include operating system information of the target application program.
In some optional implementation manners of this embodiment, the apparatus 400 for acquiring preset service information may further include: a first generating unit (not shown), a display unit (not shown). The first generating unit may be configured to generate a display page according to preset service information. The display unit may be configured to display a presentation page.
In some optional implementation manners of this embodiment, the preset service information may include service suspension information. The display unit may be further configured to: and displaying the display page in a pop-up window form. Wherein, the display page may include a service stop announcement.
In some optional implementations of this embodiment, the presentation page may further include a first determination button. The apparatus 400 for acquiring preset service information may further include: and a first closing unit (not shown in the figure) configured to close the target application in response to detecting that the first decision button is clicked.
In some optional implementation manners of this embodiment, the preset service information may include forced upgrade information. The display unit may be further configured to: and displaying the display page in a pop-up window form. Wherein, the display page may include a forced upgrade bulletin.
In some optional implementations of this embodiment, the presentation page may further include a cancel button and a second confirm button. The apparatus 400 for acquiring preset service information may further include: a second closing unit (not shown), a jumping unit (not shown). Wherein the second closing unit may be configured to close the target application in response to detecting that the cancel button is clicked. The jumping unit may be configured to jump to an upgraded version description page of the target application program in response to detecting that the second determination button is clicked.
In the apparatus provided by the above embodiment of the present disclosure, the first receiving unit 402 receives the feedback information matched with the sent network request, and the obtaining unit 404 obtains the preset service information from the corresponding configuration end according to the feedback information, so that the preset service information is used as one of the response information of the network request, and therefore, no matter whether the terminal application is running or not and whether the notification authority is turned on or not, as long as the network request is sent, the preset service information can be obtained on the premise that the configuration end is configured with the preset service information, thereby greatly improving the real-time performance of obtaining the preset service information.
With further reference to fig. 5, as an implementation of the method shown in the above-mentioned figures, the present disclosure provides an embodiment of an apparatus for sending an information presentation identifier, where the embodiment of the apparatus corresponds to the embodiment of the method shown in fig. 3, and the apparatus may be specifically applied to various electronic devices.
As shown in fig. 5, the apparatus 500 for sending an information presentation identifier provided in this embodiment includes a second receiving unit 501, a second determining unit 502, a second generating unit 503, and a second sending unit 504. The second receiving unit 501 is configured to receive a first network request, where the first network request includes version information of a target application installed in a terminal; a second determining unit 502, configured to determine an information display identifier matching the version information of the target application program according to a correspondence table between the preset version information of the application program and the information display identifier, where the information display identifier is used to indicate whether the target application program displays preset service information; a second generating unit 503 configured to generate feedback information according to the matched information presentation identifier; a second sending unit 504 configured to send the feedback information to the sending end of the first network request.
In this embodiment, in the apparatus 500 for sending the information presentation identifier: the specific processing of the second receiving unit 501, the second determining unit 502, the second generating unit 503 and the second sending unit 504 and the technical effects thereof can refer to the related descriptions of step 301, step 302, step 303 and step 304 in the corresponding embodiment of fig. 3, which are not described herein again.
In some optional implementation manners of this embodiment, the preset service information may include service stopping information and forced upgrade information. The second determining unit 502 may be further configured to: and in response to determining that the information display identifier matched with the version information of the target application program in the correspondence table is used for indicating that the target application program does not display the service stopping information, determining the information display identifier used for indicating whether the target application program displays the forced upgrade information as the information display identifier matched with the version information of the target application program.
In some optional implementations of this embodiment, the second generating unit 503 may be further configured to: in response to determining that the matching information presentation indicator is for indicating that the target application program presents the forced upgrade information, generating feedback information including the matching information presentation indicator.
In some optional implementations of this embodiment, the apparatus 500 for sending an information presentation identifier may further include a third sending unit (not shown in the figure), configured to: in response to determining that the matching information presentation indicator indicates that the target application program does not present the forced upgrade information, performing the steps of: determining whether the first network request comprises a service request; in response to the fact that the first network request comprises a service request, sending the service request to a service server corresponding to the service request; receiving a service result fed back by a service server; and sending the service result to the sending end of the first network request.
In some optional implementation manners of this embodiment, the correspondence table may further include operating system information of the target application program.
In the apparatus provided by the above embodiment of the present disclosure, the second generating unit 503 generates the information display identifier matched with the network request received by the second receiving unit 501, and the information display identifier is used as one of the response information of the network request, so that no matter whether the application program of the terminal is running or not and whether the notification authority is turned on or not, as long as the network request is sent, the preset service information can be obtained on the premise that the configuration end is configured with the preset service information, thereby greatly improving the real-time performance of obtaining the information display identifier. Moreover, the information display identification is configured at the gateway server side instead of the specific information display content, so that the realization complexity of the gateway is reduced, and the service pressure of the gateway is also reduced.
With further reference to fig. 6, a timing sequence 600 of interactions between various devices in one embodiment of a system for obtaining provisioned service information is illustrated. The system for acquiring the preset service information may include: terminals (e.g., terminal devices 101, 102, 103 shown in fig. 1), gateway server side (e.g., server 1051 shown in fig. 1), and configuration side (e.g., server 106 shown in fig. 1). The terminal can be configured to send a first network request to a gateway server corresponding to a target application installed in the terminal; receiving feedback information matched with the first network request; extracting an information display identifier from the feedback information; and in response to the fact that the information display identifier is used for indicating the target application program to display the preset service information, acquiring the preset service information matched with the information display identifier from a configuration end corresponding to the preset service information. The first network request may include version information of the target application. The feedback information may include an information display identifier for indicating whether the target application program displays the preset service information. The gateway server may be configured to receive a first network request; determining an information display identifier matched with the version information of the target application program according to a corresponding relation table between the preset version information of the application program and the information display identifier; generating feedback information according to the matched information display identifier; and sending feedback information to the sending end of the first network request. The information display identifier may be used to indicate whether the target application program displays preset service information. The configuration end may be configured to send the matched preset service information to the terminal.
As shown in fig. 6, in step 601, the terminal sends a first network request to the gateway server.
In this embodiment, the first network request may include version information of the target application.
In some optional implementation manners of this embodiment, the network request may further include operating system information of the target application program.
In step 602, according to a preset correspondence table between the version information of the application program and the information display identifier, the gateway server determines the information display identifier matching with the version information of the target application program.
In step 603, according to the matched information display identifier, the gateway server generates feedback information.
In step 604, the gateway server sends feedback information to the sender of the first network request.
Step 602, step 603, and step 604 are respectively consistent with step 302, step 303, step 304 and their optional implementations in the foregoing embodiment, and the above description on step 302, step 303, step 304 and their optional implementations also applies to step 602, step 603, and step 604, and is not described herein again.
Step 605, the terminal extracts the information display identifier from the feedback information.
Step 606, in response to determining that the information display identifier is used to indicate the target application program to display the preset service information, the terminal acquires the preset service information matched with the information display identifier from the configuration end.
Step 601 may be consistent with step 201 and its optional implementation in the foregoing embodiments. Step 605 and step 606 may be consistent with the alternative implementation of step 203 in the previous embodiment. The above description for step 201 and its optional implementation and the optional implementation of step 203 also applies to step 601, step 605 and step 606, and is not described here again.
In some optional implementation manners of this embodiment, the above interaction process further includes:
step 607, according to the preset service information, the terminal generates a display page.
In step 608, the terminal displays a presentation page.
The steps 607 and 608 may be consistent with the alternative implementation of step 204 in the previous embodiment. The above description of the alternative implementation of step 204 also applies to step 607 and step 608, which are not described here again.
In the system for acquiring preset service information provided in the above embodiment of the present application, the terminal sends the network request including the version information of the target application to the corresponding gateway server, and the gateway server generates the information display identifier according to the network request as one of the response information of the network request, so that no matter whether the application of the terminal is running or not and whether the notification authority is turned on or not is realized, as long as the network request is sent, the preset service information can be acquired on the premise that the configuration end is configured with the preset service information, thereby greatly improving the real-time performance of the application of the terminal in acquiring the preset service information. Moreover, the information display identification is configured at the gateway server side instead of the specific information display content, so that the realization complexity of the gateway is reduced, and the service pressure of the gateway is also reduced.
With further reference to fig. 7, a timing sequence 700 of interactions between various devices in an embodiment of yet another system for obtaining provisioned service information is illustrated. The system for acquiring the preset service information may include: terminals (e.g., terminal devices 101, 102, 103 shown in fig. 1), gateway servers (e.g., server 1051 shown in fig. 1), configuration servers (e.g., server 106 shown in fig. 1), and network security servers (not shown in fig. 1). The terminal can be configured to send a first network request to a gateway server corresponding to a target application installed in the terminal; receiving error prompt information which is sent by a network security service end corresponding to the first network request and represents certificate failure; sending a second network request to a configuration end corresponding to the preset service information; and receiving preset service information sent by a configuration end. The first network request may include version information of the target application program. The first network request follows a network security protocol. The second network request may include version information of the target application. The second network request does not pass through the network security server. The network security server may be configured to perform certificate verification on the first network request; generating error prompt information representing certificate failure in response to determining that the certificate corresponding to the first network request is failed; and sending error prompt information to the terminal. The configuration end may be configured to send the preset service information to the terminal in response to receiving the second network request. Optionally, the gateway server may be configured to execute the method for sending the information presentation identifier described in the foregoing embodiment.
As shown in fig. 7, in step 701, the terminal sends a first network request to the gateway server.
In this embodiment, the first network request may include version information of the target application. The first network request follows a network security protocol, such as the https protocol.
In some optional implementation manners of this embodiment, the network request may further include operating system information of the target application program.
In step 702, the network security service performs certificate verification on the first network request.
In this embodiment, the network security service may perform certificate verification on the first network request in various manners. As an example, the network security server may be a server providing related services of SSL and/or TLS security protocols. The network security service terminal can use the existing various signature verification modes to verify the signature of the certificate. For example, the https public key certificate of the application program is stored locally in the terminal and is not updated, and the network security server may determine whether the public key certificate is expired.
In step 703, in response to determining that the certificate corresponding to the first network request is invalid, the network security service generates error prompt information indicating that the certificate is invalid.
In this embodiment, in response to determining that the certificate corresponding to the first network request is invalid, the network security service may generate error prompt information indicating that the certificate is invalid. The error prompt message may include various forms, such as numbers, letters, Chinese characters, and the like.
In step 704, the network security server sends an error prompt message to the terminal.
In step 705, the terminal sends a second network request to the configuration end.
In step 706, in response to receiving the second network request, the configuration end sends preset service information matched with the second network request to the terminal.
Step 701 may be consistent with step 201 and its optional implementation in the foregoing embodiments. Step 704, step 705 and step 706 may be consistent with alternative implementations of step 203 in the foregoing embodiments. The above description for step 201 and its optional implementation and the optional implementation of step 203 also applies to step 701, step 704, step 705, and step 706, and is not described herein again.
In the system for acquiring preset service information provided in the above embodiment of the present application, a network request that includes version information of a target application and conforms to a network security protocol is sent to a corresponding gateway server through a terminal, and the network security server performs certificate verification on the network request. The terminal may obtain the preset service information by sending a network request to the configuration end without passing through the network security service end under the condition that the certificate is invalid. Therefore, the preset service information can be obtained on the premise that the configuration end is configured under the condition that the application program of the terminal can not obtain the information from the background server of the application program through the network request following the network security protocol, and the instantaneity and the certainty of obtaining the preset service information by the application program of the terminal are greatly improved. Moreover, the scheme does not need to destroy the communication security between the application program of the terminal and the background server.
Referring now to FIG. 8, a block diagram of an electronic device (e.g., the server of FIG. 1) 800 suitable for use in implementing embodiments of the present disclosure is shown. The terminal device in the embodiments of the present disclosure may include, but is not limited to, a mobile terminal such as a mobile phone, a notebook computer, and the like, and a stationary terminal such as a digital TV, a desktop computer, and the like. The server shown in fig. 8 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 8, an electronic device 800 may include a processing means (e.g., central processing unit, graphics processor, etc.) 801 that may perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)802 or a program loaded from a storage means 808 into a Random Access Memory (RAM) 803. In the RAM803, various programs and data necessary for the operation of the electronic apparatus 800 are also stored. The processing apparatus 801, the ROM 802, and the RAM803 are connected to each other by a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
Generally, the following devices may be connected to the I/O interface 805: input devices 806 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; an output device 807 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 808 including, for example, magnetic tape, hard disk, etc.; and a communication device 809. The communication means 809 may allow the electronic device 800 to communicate wirelessly or by wire with other devices to exchange data. While fig. 8 illustrates an electronic device 800 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided. Each block shown in fig. 8 may represent one device or may represent multiple devices as desired.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated in the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication means 809, or installed from the storage means 808, or installed from the ROM 802. The computer program, when executed by the processing apparatus 801, performs the above-described functions defined in the methods of the embodiments of the present disclosure.
It should be noted that the computer readable medium described in the embodiments of the present disclosure may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In embodiments of the disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In embodiments of the present disclosure, however, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the foregoing.
The computer readable medium may be embodied in the electronic device; or may exist separately without being mounted in the electronic device (terminal device or server). The computer readable medium carries one or more programs which, when executed by the terminal device, cause the terminal device to: sending a first network request to a gateway server corresponding to a target application program installed in a terminal, wherein the first network request comprises version information of the target application program; receiving feedback information matched with the first network request; determining an information acquisition mode matched with a sending end of the feedback information; and acquiring the preset service information from a configuration end corresponding to the preset service information by adopting an information acquisition mode. Alternatively, the one or more programs, when executed by the server, cause the server to: receiving a first network request, wherein the first network request comprises version information of a target application program installed in a terminal; determining an information display identifier matched with the version information of the target application program according to a corresponding relation table between the preset version information of the application program and the information display identifier, wherein the information display identifier is used for indicating whether the target application program displays preset service information or not; generating feedback information according to the matched information display identifier; and sending feedback information to the sending end of the first network request.
Computer program code for carrying out operations for embodiments of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software or hardware. The described units may also be provided in a processor, and may be described as: a processor comprises a first sending unit, a first receiving unit, a first determining unit and an acquiring unit. Or, the processor comprises a second receiving unit, a second determining unit, a second generating unit and a second sending unit. The names of these units do not form a limitation on the unit itself in some cases, for example, the first sending unit may also be described as a unit that sends a first network request to a gateway server corresponding to a target application installed in the terminal, where the first network request includes version information of the target application.
The foregoing description is only exemplary of the preferred embodiments of the disclosure and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the invention in the embodiments of the present disclosure is not limited to the specific combination of the above-mentioned features, but also encompasses other embodiments in which any combination of the above-mentioned features or their equivalents is made without departing from the inventive concept as defined above. For example, the above features and (but not limited to) technical features with similar functions disclosed in the embodiments of the present disclosure are mutually replaced to form the technical solution.