Long running requests
First Claim
1. A computer-implemented method for processing long-running requests, comprising:
- sending from a client a first page request to a server to render an HTML page within a browser on the client;
wherein the HTML page includes at least one control;
receiving from the server HTML from the first page result;
rendering the HTML within the browser;
generating a second page request;
wherein the second page request instructs the server to treat the second page request as a long-running request that requests the control to be rendered within the browser;
wherein the long-running request is a request to the server that indicates that the request when processed by the server exceeds a server timeout period for servicing the long-running request and in response to the long-running request the server sending data to the client at a rate that avoids triggering the server timeout period during processing of the long-running request;
wherein the data sent by the server to the client is any type of data;
receiving at the client the data sent from the server at a rate that avoids a timeout on the server;
initiating the display of a progress UI within the control in response to generating the long-running request and the receiving data from the server such that the progress UI is displayed while the long-running request is being executed while maintaining the state of the HTML page, wherein the progress UI indicates the status of a long-running request while it is being executed; and
hiding the progress UI in response to a determination that the long running request is complete.
2 Assignments
0 Petitions
Accused Products
Abstract
A progress UI is displayed within a user'"'"'s web page for long-running requests. For each long-running request, a progress UI is displayed to the user indicating that the long-running request is being processed until the long-running request has been processed. The progress UI may be a progress indicator showing the user the status of the processing, or the status message could be some other message to the user indicating that the long-running request is still being processed. While the long-running request is being processed, data is sent from the server to the user'"'"'s browser at a rate such that the server performing the long-running request does not time out. The current state of a web page may be maintained such that when a long running request is made the web page that contains the control that issued the long-running request is not automatically refreshed when the long running request takes place.
-
Citations
20 Claims
-
1. A computer-implemented method for processing long-running requests, comprising:
-
sending from a client a first page request to a server to render an HTML page within a browser on the client;
wherein the HTML page includes at least one control;receiving from the server HTML from the first page result; rendering the HTML within the browser; generating a second page request;
wherein the second page request instructs the server to treat the second page request as a long-running request that requests the control to be rendered within the browser;
wherein the long-running request is a request to the server that indicates that the request when processed by the server exceeds a server timeout period for servicing the long-running request and in response to the long-running request the server sending data to the client at a rate that avoids triggering the server timeout period during processing of the long-running request;
wherein the data sent by the server to the client is any type of data;receiving at the client the data sent from the server at a rate that avoids a timeout on the server; initiating the display of a progress UI within the control in response to generating the long-running request and the receiving data from the server such that the progress UI is displayed while the long-running request is being executed while maintaining the state of the HTML page, wherein the progress UI indicates the status of a long-running request while it is being executed; and hiding the progress UI in response to a determination that the long running request is complete. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-readable storage medium having computer-executable instructions for processing long-running requests, the instructions comprising:
-
sending a first page request to a server;
wherein a first page includes at least one control;rendering the first page in response to a result received in response to the first request; sending a second page request;
wherein the second page request instructs the server to treat the second page request as a long-running request that requests the control to be rendered;
wherein the long-running request is a request to the server that indicates that the servicing of the long-running request will exceed a timeout period of the server and in response to the long-running request the server sending data to the client at a rate that avoids triggering the server timeout period;
wherein the data sent by the server to the client is any type of data;displaying a progress UI within the control that indicates the status of a long-running request is being executed while the long-running request is being executed;
wherein the progress UI is displayed using HTML and wherein the first page is maintained while the long-running request is being processed;determining whether the long running request is currently being processed by determining whether the entire content has been received; continuing to display the progress UI in response to determining that the long running request is currently being processed; and hiding the progress UI in response to determining that the long running request in not currently being processed such that the progress UI is hidden when the long running request is complete. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A system for processing long-running requests, comprising:
-
a server comprising; a processor and a computer-readable medium; an operating environment stored on the computer-readable storage medium and executing on the processor; and a program operating under the control of the operating environment and operative to perform actions, including; receiving a first page request from a client that includes a control within an HTML page associated with the first page request; sending HTML in response to the first page request; receiving a second page request from the control;
wherein the second page request is treated as a long-running request;
wherein the long-running request causes the server to stream data to the client at a rate that avoids a timeout from being detected;
wherein the data may be any type of data;performing operations relating to the long-running request; and providing a result of long-running request to the client; the client that is coupled to the server, comprising; a processor and a computer-readable medium; an operating environment stored on the computer-readable medium and executing on the processor; a display; and a browser operating under the control of the operating environment and operative to perform actions, including; sending the first page request to the server; rendering a first page in response to the received HTML; sending the second page request; initiating the display of a progress UI within the control that indicates that a long-running request is being executed while the long-running request is being executed and while maintaining a state of the first page;
wherein the progress UI is displayed using HTML; and
wherein the progress UI indicates the status of a long-running request while it is being executed; andhiding the progress UI in response to a determination that the long running request is complete. - View Dependent Claims (17, 18, 19, 20)
-
Specification