Detailed Description
The present disclosure is described in further detail below with reference to the drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be noted that, for convenience of description, only the portions related to the present invention are shown in the drawings.
It should be noted that, without conflict, the embodiments of the present disclosure and features of the embodiments may be combined with each other. The present disclosure will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
Fig. 1 illustrates 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, a system architecture 100 may include terminal devices 101, 102, 103, a network 104 and a backend server cluster 105 and a configuration server 106. The network 104 is used as a medium for providing communication links between the terminal devices 101, 102, 103 and the backend server cluster 105, the configuration server 106. The network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
Terminal devices 101, 102, 103 interact with a backend server cluster 105 and a configuration server 106 via a network 104 to receive or send messages or the like. Various communication client applications, such as a web browser application, a shopping class application, a search class application, an instant messaging tool, a mailbox client, etc., may be installed on the terminal devices 101, 102, 103.
The terminal devices 101, 102, 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 man-machine interaction, including but not limited to smartphones, tablet computers, laptop and desktop computers, and the like. When the terminal devices 101, 102, 103 are software, they can be installed in the above-listed electronic devices. Which may be implemented as multiple software or software modules (e.g., software or software modules for providing distributed services) or as a single software or software module. The present invention is not particularly limited herein.
The backend server cluster 105 may include servers that provide various services, such as backend servers that provide support for applications installed on the terminal devices 101, 102, 103. The background server 1051 may be a gateway server for applications. Typically, all network requests of an application installed on a terminal will go through the gateway server corresponding to the application. The web 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 the received network request, and feed back the generated processing result (e.g. an information presentation identifier for indicating whether the application program presents the preset service information) to the terminal devices 101, 102, 103.
The configuration server 106 may be configured to store specific preset business information such as out-of-service announcements, forced upgrade information, etc. The terminal devices 101, 102, 103 may acquire specific preset service information from the configuration server 106 after acquiring the information presentation identifier.
The server may be hardware or software. When the server is hardware, the server may be implemented as a distributed server cluster formed by a plurality of servers, or may be implemented as a single server. When the server is software, it may be implemented as a plurality of software or software modules (e.g., software or software modules for providing distributed services), or as a single software or software module. The present invention is not particularly limited herein.
It should be noted that, the method for acquiring the preset service information provided by the embodiments of the present disclosure is generally performed by the terminal devices 101, 102, 103, and accordingly, the apparatus for acquiring the preset service information is generally provided in the terminal devices 101, 102, 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 continued reference to fig. 2, a flow 200 of one embodiment of a method for acquiring preset business information according to 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 executing body (such as the terminal devices 101, 102, 103 shown in fig. 1) of the method for acquiring preset service information may send, by a wired connection manner or a wireless connection manner, a first network request to a gateway server corresponding to a target application installed in the executing body. The first network request may include version information of the target application. The version information may include a version number of the formally online application, such as 1.1.0,1.2.0. The target application may be any application specified in advance according to actual application requirements, or may be an application (for example, an application belonging to the same class) according to a rule. Generally, the application program may be installed in a fixed terminal (for example, a personal computer) or may be installed in a mobile terminal (for example, a smart phone), which will not be described herein.
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 may distribute the network request to a corresponding server in the background server cluster. The architecture of the application program installed in the terminal, the corresponding gateway server and the background server cluster belongs to the known technology of current extensive research and application, and is not repeated here.
In some optional implementations of this embodiment, the network request may further include operating system information that the target application runs. 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, saidban systems, etc. The network request may include the first network request and a second network request below.
Based on the above optional implementation manner, the method for acquiring the preset service information can be set for the application programs running in different operating systems, so that the flexibility is improved.
In some alternative implementations of the present embodiment, the network request may also follow a network security protocol. The network security protocols may include SSL (Secure Sockets Layer, secure socket protocol) and/or TLS (Transport Layer Security ) security protocols, among others.
Step 202, receiving feedback information matched with the first network request.
In this embodiment, the executing entity may receive the feedback information matched with the first network request sent in step 201 in various manners. As an example, the executing body may receive the feedback information from a different electronic device of the communication connection according to a type and content of the first network request.
In some optional implementations of this embodiment, based on the feedback information including an information display identifier for indicating whether the target application program displays preset service information, the execution body may receive 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 the response information of the first network request, so that the instantaneity of acquiring the information display identifier is greatly improved.
In some optional implementations of this embodiment, based on the first network request following a network security protocol, the feedback information includes error prompt information that characterizes certificate failure, and the execution entity may receive the error prompt information sent by a network security server corresponding to the first network request. The network security server may include, for example, a server that provides related services of SSL and/or TLS security protocols.
Based on the alternative implementation, the executing entity may identify certificate invalidation 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 executing body may determine the information acquisition mode matched with the transmitting end of the feedback information received in the step 202 in various modes. As an example, the execution body may store a relationship table of correspondence between the sending end of the feedback information and the information acquisition mode in advance. The executing body may first determine the sending end of the feedback information received in step 202, and then determine the matched information acquisition mode according to the relationship table.
In some optional implementations 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 acquisition manner matched with the gateway server:
first, information display identifiers are extracted from feedback information.
In these implementations, based on the feedback information including an information presentation identifier for indicating whether the target application program presents preset service information, the executing entity may extract the information presentation identifier from the feedback information received in the step 202. The information display identifier may include various forms, for example, a "1", "0" or "on" and "off" are used to respectively represent display and non-display of preset service information. In practice, the information presentation identifier may correspond to an actionData, and its json data format may be { "address": "/main/update" }.
And secondly, responding to the fact that the information display identifier is used for indicating the target application program to display preset service information, and acquiring the preset service information matched with the information display identifier from the configuration terminal.
In these implementations, in response to determining that the information presentation identifier is used to instruct the target application to present the preset service information, the executing body may acquire the preset service information matched with the information presentation identifier from a configuration end corresponding to the preset service information. As an example, the execution 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 body after receiving the preset service information acquisition request. The preset service information may include various information of an application program for touching the terminal. Which may include, but is not limited to, at least one of: and reminding the updating information, stopping the service information and forcedly upgrading the information.
In these implementations, the configuration end may store a correspondence between version information of each application program and preset service information. Optionally, the correspondence may further include operating system information for running the application program. Optionally, the correspondence may further include a correspondence between version information of each application program and an information display identifier, so that the gateway server may obtain the correspondence table from the configuration end.
Based on the above optional implementation manner, the executing body may acquire, from the designated configuration end, the specific preset service information to be displayed after acquiring, from the gateway server end, the information display identifier for indicating that the target application program displays the preset service information.
In some optional implementations 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 acquisition manner matched with the gateway server:
the first step is to send a second network request to the configuration end.
In these implementations, the executing entity may send the second network request to the configuration end through 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 https request and the second network request may be an http request.
And step two, receiving preset service information sent by the configuration terminal.
In these implementations, the executing body may receive preset service information sent by the configuration end.
In these implementations, the configuration end may store a correspondence between version information of each application program and preset service information. Optionally, the correspondence may further include operating system information for running the application program.
Based on the above optional implementation manner, the executing body may directly obtain the preset service information from the configuration end under the condition that the information display identifier cannot be obtained from the gateway server end. Therefore, the preset service information can still be obtained under the condition that the https certificate is out of date due to the fact that the https certificate is locally placed.
Step 204, acquiring preset service information from a configuration terminal corresponding to the preset service information by adopting an information acquisition mode.
In this embodiment, the executing body may acquire the preset service information from the configuration end corresponding to the preset service information by using the information acquisition manner determined in the step 203. The description of the configuration end may be identical to the description of the foregoing steps, which is not repeated herein.
In some optional implementations of this embodiment, the foregoing execution body may further execute the following steps:
first, generating a display page according to preset service information.
In these implementations, the executing body may generate the presentation page according to the preset service information acquired in step 204. The display page may include the obtained preset service information.
Alternatively, the preset service information may include out-of-service information.
Alternatively, the preset service information may include forced upgrade information.
And secondly, displaying the display page.
In these implementations, the executing entity may display the presentation page generated in the first step in various manners. As an example, the execution body may display the generated presentation page in a manner that allows the user to perform other operations on the application or does not allow the user to perform other operations on the application according to a priority order of the preset service information.
Optionally, the executing body may display the presentation page in a pop-up window form. Wherein, the display page can comprise a stop service announcement. Optionally, the execution body may display the presentation page in a pop-up window covering the whole application page, so as to block other operations performed by the user on the application.
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 body may display the display page in a pop-up window form, where the display page may include a forced upgrade advertisement. Optionally, the execution body may also display the display page in a pop-up window covering the whole application page, so as to block other operations performed by the user on the application.
Optionally, the presentation page may further include a cancel button and a second ok button. The execution body may further continue to execute the following steps:
in a first step, responsive to detecting that the cancel button is clicked, the target application is closed.
And a second step of jumping to an upgrade version description page of the target application program in response to detecting that the second determination button is clicked.
In these implementations, the upgrade version description page of the target application program may include, for example, a detail page or download page of the upgrade version of the target application program in the application mall.
Based on the optional implementation manner, the execution body may display the acquired preset service information and interact with the user through the generated presentation page.
According to the method provided by the embodiment of the disclosure, by receiving the feedback information matched with the sent network request and acquiring the preset service information from the corresponding configuration terminal according to the feedback information, the preset service information is used as one of the response information of the network request, whether the terminal application program operates or not and whether the notification authority is opened or not is realized, and the preset service information can be acquired on the premise that the configuration terminal is configured with the preset service information as long as the sending of the network request exists, so that the real-time performance 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 transmitting an information presentation identifier according to the present disclosure is shown. The method for transmitting the information display identifier comprises the following steps:
step 301, a first network request is received.
In this embodiment, the execution subject (such as the server 1051 shown in fig. 1) of the method for transmitting the information presentation identifier may acquire 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 description of the first network request and the target application may be identical to the corresponding description in the foregoing embodiments, which is not repeated herein.
In some optional implementations of this embodiment, the network request may further include operating system information that the target application runs. The above network request may be consistent with the corresponding description in the foregoing embodiments, and will not be repeated here.
Step 302, determining an information display identifier matched with the version information of the target application program according to a corresponding relation table between the version information of the preset application program and the information display identifier.
In this embodiment, the executing body may obtain the corresponding relationship table between the version information of the preset application program and the information display identifier in various manners. As an example, the executing body may acquire the correspondence table from a gateway configuration center corresponding to the gateway server. The gateway configuration center can be used for operators to configure various information related to actual application scenes. As yet another example, the execution body may further acquire the corresponding relationship table from a configuration end of the communication connection. The configuration terminal may store a correspondence between version information of each application program and an information display identifier. Optionally, the correspondence may further include operating system information for running the application program. Optionally, the correspondence relationship may further include a correspondence relationship between version information of each application program and preset service information.
In this embodiment, the execution body may determine, according to the obtained correspondence table between the version information of the preset application program and the information display identifier, the information display identifier that matches the version information of the target application program received in step 301. The information display identifier may be used to indicate whether the target application program displays preset service information. The information presentation identifier may be identical to the corresponding description in the foregoing embodiment, and will not be repeated here.
As an example, the correspondence table may include: version 1.1.8, which shows the recommendation update information, and version 1.2.0, which does not show the recommendation update information. The execution body may determine, according to the correspondence table, an information presentation identifier that matches version information (e.g., version 1.1.8) of the target application program as presentation recommendation update information.
In some optional implementations of this embodiment, the preset service information may include out-of-service information and forced upgrade information. The execution subject may determine, in response to determining that the information presentation identifier matching 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, the information presentation identifier used to indicate whether the target application presents the forced upgrade information as the information presentation identifier matching the version information of the target application.
Based on the above optional implementation manner, the execution body can first determine whether the service stopping information exists, and judge whether the forced upgrade information exists on the premise that the service stopping information does not exist, so that the method is more in line with the operation experience of the application program, optimizes the flow of the application program for acquiring the service stopping information and the forced upgrade information, and improves the efficiency.
In some optional implementations of this embodiment, the correspondence table may further include operating system information that the target application runs. As an example, the correspondence table may further include: version 1.1.8-android system shows recommended update information-iOS system does not show recommended update information.
And 303, generating feedback information according to the matched information display identification.
In this embodiment, the executing entity may generate the feedback information in various manners according to the matched information presentation identifier determined in step 302. As an example, the execution subject may directly generate feedback information including the matched information presentation identifier. The matched information display identifier may be used, for example, to instruct the target application program to display preset service information, or may be used to instruct the target application program not to display preset service information.
In some optional implementations of this embodiment, in response to determining that the matched information presentation identifier is used to indicate the target application program to present the forced upgrade information, the executing entity may generate feedback information including the matched information presentation identifier.
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 does not present forced upgrade information, the executing entity may further continue to perform the following steps:
in a first step, it is determined whether the service request is included in the first network request.
In these implementations, in response to determining that the matching information presentation identifier is used to indicate that the target application does not present forced upgrade information, the executing entity may determine whether the service request is included in the first network request received in step 301 in various manners. As an example, the execution body may determine whether to include a service request by extracting a specific field from the request body. Wherein the service request can 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 specific processing of a certain picture.
And a second step of sending the service request to the service server corresponding to the service request in response to the determination that the first network request comprises the service request.
In these implementations, in response to determining that the first network request includes a service request, the executing entity 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 server 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 executing body may receive the service result fed back by the receiving end of the service request in the second step in various manners.
And step four, sending a service result to a sending end of the first network request.
In these implementations, the executing body 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 above optional implementation manner, the execution body may continue processing the service flow on the premise that it is determined that the target application program does not display the service stopping information and the forced upgrade information, and feed back the service result to the target application program.
Step 304, feedback information is sent to the sender of the first network request.
In this embodiment, the executing body may send the feedback information generated in the step 303 to the sending end of the first network request received in the step 301.
According to the method provided by the embodiment of the invention, 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 whether the application program of the terminal operates or not and whether the notification authority is opened or not is realized, and the preset service information can be acquired on the premise that the configuration terminal is configured with the preset service information only by transmitting the network request, thereby greatly improving the instantaneity of acquiring the information display identifier. Moreover, by configuring the information display identifier instead of the specific information display content at the gateway server, the implementation 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 method shown in the foregoing 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 in this embodiment includes a first transmitting 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 program installed in a terminal, where the first network request includes version information of the target application program; 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 the transmitting end of the feedback information; the acquiring unit 404 is configured to acquire the preset service information from the configuration end corresponding to the preset service information by adopting an information acquiring manner.
In this embodiment, in the apparatus 400 for acquiring preset service information: the specific processing of the first transmitting unit 401, the first receiving unit 402, the first determining unit 403 and the obtaining unit 404 and the technical effects thereof may refer to the relevant descriptions of step 201, step 202, step 203 and step 204 in the corresponding embodiment of fig. 2, and are not repeated here.
In some optional implementations of this embodiment, the feedback information may include an information presentation identifier for indicating whether the target application program presents 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 above-described first determination unit 403 may be further configured to: in response to determining that the transmitting end is a gateway server, determining the following information acquisition modes as information acquisition modes matched with the gateway server: extracting an information display identifier from the feedback information; and responding to the information display identification for indicating the target application program to display the preset service information, and acquiring the preset service information matched with the information display identification from the configuration terminal.
In some optional implementations of this embodiment, the first network request follows a network security protocol. The feedback information may include error indication information characterizing certificate expiration. The first receiving unit 402 may be further configured to: and receiving error prompt information sent by a network security server corresponding to the first network request. The above-described first determination unit 403 may be further configured to: in response to determining that the transmitting end is a network security server, determining the following information acquisition modes as information acquisition modes matched with the network security server: sending a second network request to the configuration terminal, wherein the second network request comprises version information of the target application program, and the second network request does not pass through the network security server terminal; and receiving preset service information sent by the configuration terminal.
In some optional implementations of this embodiment, the network request may further include operating system information that the target application runs.
In some optional implementations of this embodiment, the apparatus 400 for acquiring preset service information may further include: a first generation unit (not shown in the figure), a display unit (not shown in the figure). The first generating unit may be configured to generate the display page according to preset service information. The display unit may be configured to display a presentation page.
In some optional implementations of this embodiment, the preset service information may include out-of-service information. The display unit may be further configured to: and displaying the display page in a popup window mode. Wherein, the display page can comprise a stop service announcement.
In some optional implementations of this embodiment, the presentation page may further include a first ok button. The apparatus 400 for acquiring preset service information may further include: a first closing unit (not shown in the figure) configured to close the target application in response to detecting that the first determination button is clicked.
In some optional implementations 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 popup window mode. Wherein, the display page can comprise a forced upgrade notice.
In some optional implementations of this embodiment, a cancel button and a second ok button may also be included in the presentation page. 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 above-mentioned jumping unit may be configured to jump to the upgrade version description page of the target application program in response to detecting that the second determination button is clicked.
According to the device provided by the embodiment of the 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, whether the terminal application program operates and whether the notification authority is opened or not is realized, and the preset service information can be obtained on the premise that the configuration end is configured with the preset service information as long as the sending of the network request exists, thereby greatly improving the instantaneity of obtaining the preset service information.
With further reference to fig. 5, as an implementation of the method shown in the foregoing figures, the present disclosure provides an embodiment of an apparatus for transmitting information presentation identifiers, where the embodiment of the apparatus corresponds to the embodiment of the method shown in fig. 3, and the apparatus may be specifically applied in various electronic devices.
As shown in fig. 5, the apparatus 500 for transmitting an information presentation identifier provided in the present embodiment includes a second receiving unit 501, a second determining unit 502, a second generating unit 503, and a second transmitting unit 504. Wherein 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 the terminal; a second determining unit 502 configured to determine, according to a correspondence table between version information of a preset application program and information display identifiers, an information display identifier that matches version information of a target application program, 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; the second transmitting unit 504 is configured to transmit feedback information to the transmitting end of the first network request.
In this embodiment, in the apparatus 500 for transmitting information presentation identifier: specific processes of the second receiving unit 501, the second determining unit 502, the second generating unit 503 and the second transmitting unit 504 and technical effects thereof may refer to the relevant descriptions of step 301, step 302, step 303 and step 304 in the corresponding embodiment of fig. 3, and are not repeated herein.
In some optional implementations of this embodiment, the preset service information may include out-of-service information and forced upgrade information. The second determining unit 502 may be further configured to: and in response to determining that the information presentation identifier matched with the version information of the target application program in the corresponding relation table is used for indicating that the target application program does not present the stop service information, determining the information presentation identifier used for indicating whether the target application program presents the forced upgrade information as the information presentation 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: responsive to determining that the matched information presentation identifier is used to indicate the target application to present the forced upgrade information, feedback information including the matched information presentation identifier is generated.
In some optional implementations of this embodiment, the apparatus 500 for transmitting an information presentation identifier may further include a third transmitting unit (not shown in the figure) configured to: in response to determining that the matching information presentation identification is used to indicate that the target application does not present forced upgrade information, performing the steps of: determining whether the first network request includes a service request; in response to determining 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 a sending end of the first network request.
In some optional implementations of this embodiment, the correspondence table may further include operating system information that the target application runs.
According to the device provided by the 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 uses the information display identifier as one of the response information of the network request, so that whether the application program of the terminal operates and opens the notification authority is realized, and the preset service information can be obtained on the premise that the configuration end is configured with the preset service information as long as the transmission of the network request exists, thereby greatly improving the instantaneity of obtaining the information display identifier. Moreover, by configuring the information display identifier instead of the specific information display content at the gateway server, the implementation complexity of the gateway is reduced, and the service pressure of the gateway is also reduced.
With further reference to fig. 6, a timing 600 of interactions between various devices in one embodiment of a system for acquiring preset business information is illustrated. The system for acquiring preset service information may include: a terminal (e.g., terminal devices 101, 102, 103 shown in fig. 1), a gateway server (e.g., server 1051 shown in fig. 1), and a configuration terminal (e.g., server 106 shown in fig. 1). The terminal may 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 responding to the determination that the information display identifier is used for indicating the target application program to display the preset service information, and acquiring the preset service information matched with the information display identifier from a configuration terminal 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 presentation identifier for indicating whether the target application program presents the preset service information. The gateway server may be configured to receive a first network request; determining an information display identifier matched with version information of a target application program according to a corresponding relation table between version information of the preset application program and the information display identifier; generating feedback information according to the matched information display identifiers; and sending feedback information to a 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 terminal 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 a gateway server.
In this embodiment, the first network request may include version information of the target application.
In some optional implementations of this embodiment, the network request may further include operating system information that the target application runs.
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 matched with the version information of the target application program.
In step 603, the gateway server generates feedback information according to the matched information display identifier.
In step 604, the gateway server sends feedback information to the sender of the first network request.
The steps 602, 603 and 604 are identical to the steps 302, 303 and 304 and their optional implementation manners in the foregoing embodiments, and the descriptions of the steps 302, 303 and 304 and their optional implementation manners also apply to the steps 602, 603 and 604, which are not repeated herein.
Step 605, the terminal extracts the information display identifier from the feedback information.
In step 606, in response to determining that the information display identifier is used to instruct the target application program to display preset service information, the terminal obtains preset service information matched with the information display identifier from the configuration terminal.
Step 601 described above may be consistent with step 201 and its alternative implementations in the previous embodiments. The above-described steps 605 and 606 may be consistent with alternative implementations of step 203 in the previous embodiments. The above description of step 201 and its alternative implementations and alternative implementations of step 203 also apply to step 601, step 605 and step 606, which are not repeated here.
In some optional implementations of this embodiment, the interaction procedure further includes:
in step 607, the terminal generates a display page according to the preset service information.
In step 608, the terminal displays the presentation page.
The above-described steps 607 and 608 may be consistent with alternative implementations of step 204 in the previous embodiments. The above description of the alternative implementation of step 204 also applies to step 607 and step 608, and is not repeated here.
According to the system for acquiring the preset service information, which is provided by the embodiment of the application, the network request comprising the version information of the target application program is sent to the corresponding gateway server through the terminal, the gateway server generates the information display identifier according to the network request to serve as one of the response information of the network request, whether the application program of the terminal runs or not and whether the notification authority is opened or not is realized, and the preset service information can be acquired on the premise that the preset service information is configured by the configuration terminal only by sending the network request, so that the real-time performance of acquiring the preset service information by the application program of the terminal is greatly improved. Moreover, by configuring the information display identifier instead of the specific information display content at the gateway server, the implementation complexity of the gateway is reduced, and the service pressure of the gateway is also reduced.
With further reference to fig. 7, a timing 700 of interactions between devices in yet another embodiment of a system for acquiring preset business information is illustrated. The system for acquiring preset service information may include: a terminal (e.g., terminal devices 101, 102, 103 shown in fig. 1), a gateway server (e.g., server 1051 shown in fig. 1), a provisioning server (e.g., server 106 shown in fig. 1), and a network security server (not shown in fig. 1). The terminal may 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 representing certificate invalidation sent by a network security server corresponding to a first network request; sending a second network request to a configuration end corresponding to preset service information; and receiving preset service information sent by the configuration terminal. 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 authenticate the first network request with a certificate; generating error prompt information representing certificate invalidation in response to determining that the certificate corresponding to the first network request is invalidated; and sending error prompt information to the terminal. The configuration terminal may be configured to send preset service information to the terminal in response to receiving the second network request. Optionally, the gateway server may be configured to perform the method for sending information presentation identifiers described in the foregoing embodiment.
As shown in fig. 7, in step 701, the terminal sends a first network request to a 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 https protocol.
In some optional implementations of this embodiment, the network request may further include operating system information that the target application runs.
In step 702, the network security server performs certificate verification on the first network request.
In this embodiment, the network security server 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 server can utilize various existing signature verification modes to carry out certificate signature verification. For example, the https public key certificate of the application is stored locally at the terminal and is not updated, and the network security server may determine whether the public key certificate has expired.
In step 703, in response to determining that the certificate corresponding to the first network request has expired, the network security server generates error prompt information that characterizes the expiration of the certificate.
In this embodiment, in response to determining that the certificate corresponding to the first network request is invalid, the network security server may generate error prompt information that characterizes the certificate invalidation. The error prompt information may include various forms, such as numbers, letters, chinese characters, and the like.
In step 704, the network security server sends an error prompt to the terminal.
In step 705, the terminal sends a second network request to the configuration terminal.
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.
The above-described step 701 may be consistent with step 201 and alternative implementations of the foregoing embodiments. The above steps 704, 705 and 706 may be consistent with alternative implementations of step 203 in the previous embodiments. The above description of step 201 and its alternative implementations and alternative implementations of step 203 also apply to step 701, step 704, step 705 and step 706, which are not repeated here.
According to the system for acquiring the preset service information, which is provided by the embodiment of the application, the terminal sends the network request which comprises the version information of the target application program and conforms to the network security protocol to the corresponding gateway server, and the network security server performs certificate verification on the network request. The terminal can obtain the preset service information by sending a network request which does not pass through the network security server to the configuration terminal under the condition that the certificate is invalid. Therefore, under the condition that the application program of the terminal can not acquire information from the background server of the application program through the network request conforming to the network security protocol, the preset service information can still be acquired on the premise that the configuration end is configured, and the real-time performance and the certainty of acquiring 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 schematic diagram of an electronic device (e.g., server in 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, etc., and a fixed terminal such as a digital TV, a desktop computer, etc. The server illustrated in fig. 8 is merely an example, and should not be construed as limiting the functionality and scope of use of embodiments of the present disclosure in any way.
As shown in fig. 8, the electronic device 800 may include a processing means (e.g., a central processor, a graphics processor, etc.) 801, which may perform various appropriate actions and processes according to 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 required for the operation of the electronic device 800 are also stored. The processing device 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 the bus 804.
In general, the following devices may be connected to the I/O interface 805: input devices 806 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, and the like; an output device 807 including, for example, a liquid crystal display (LCD, liquid Crystal Display), speakers, vibrators, and the like; storage 808 including, for example, magnetic tape, hard disk, etc.; communication means 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 shows an electronic device 800 having various means, it is to be understood that not all of the illustrated means are required to be implemented or provided. More or fewer devices may be implemented or provided instead. Each block shown in fig. 8 may represent one device or a plurality of devices as needed.
In particular, according to embodiments of the present disclosure, the processes described above with reference to 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 shown in the flowcharts. In such an embodiment, the computer program may be downloaded and installed from a network via communication device 809, or installed from storage device 808, or installed from ROM 802. The above-described functions defined in the methods of the embodiments of the present disclosure are performed when the computer program is executed by the processing device 801.
It should be noted that, the computer readable medium according to 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. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any 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 an embodiment of the present 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. Whereas in embodiments of the present disclosure, the computer-readable signal medium may comprise a data signal propagated in baseband or as part of a carrier wave, with computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. 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, fiber optic cables, RF (Radio Frequency), and the like, or any suitable combination thereof.
The computer readable medium may be contained in the electronic device; or may exist alone without being assembled into 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: a first network request is sent to a gateway server corresponding to a target application program installed on 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 feedback information; and acquiring 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 on a terminal; determining an information display identifier matched with version information of a target application program according to a corresponding relation table between the version information of the preset 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 identifiers; and sending feedback information to a sending end of the first network request.
Computer program code for carrying out operations of embodiments of the present disclosure may be written in 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 kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
The flowcharts 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 involved in the embodiments described in the present disclosure may be implemented by means of software, or may be implemented by means of hardware. The described units may also be provided in a processor, for example, described as: a processor includes a first transmitting unit, a first receiving unit, a first determining unit, and an acquiring unit. Or, a processor includes a second receiving unit, a second determining unit, a second generating unit, and a second transmitting unit. The names of these units do not limit 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 a terminal, where the first network request includes version information of the target application".
The foregoing description is only of the preferred embodiments of the present disclosure and description of the principles of the technology being 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 technical features, but encompasses other technical features formed by any combination of the above technical features or their equivalents without departing from the spirit of the invention. Such as the above-described features, are mutually substituted with (but not limited to) the features having similar functions disclosed in the embodiments of the present disclosure.