System and method for preventing duplicate transactions in an internet browser/internet server environment
First Claim
1. A computer implemented method for eliminating duplicate request submission from a browser to a server in a browser/server environment, the browser operating on a client computer processor having client memory and client processing means, the method comprising the steps of:
- setting an indicator to a first state in the client memory;
detecting a request submission at the client to send a request to the server;
testing said indicator, and if said indicator is set to said first state, then submitting the request to the server, and resetting the indicator to a second state, if said indicator is set to said second state, ignoring the request submission and raising an error condition;
thereby reducing network traffic associated with duplicate request submissions.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for controlling duplicate transaction submission in a web browser/web server environment. The client web browser is modified to include a process duplicate action select (e.g. duplicate mouse “clicks”) detection. This process establishes a variable for an action indicating whether the action has been previously selected. Upon selection, the process tests the action variable and passes the transaction request if not previously submitted and returns an error otherwise. The server process has been augmented with a duplicate transaction process. The server software inserts a _tranid parameter into each of a plurality of selected pages returned to a browser for transaction processing. The server maintains a record of the last used jranid. The server compares a tranid returned in a user request to the recorded value. If previously processed, an error is returned to the requester. If not previously processed, the recorded “last transaction id” is updated and the request fulfilled.
-
Citations
18 Claims
-
1. A computer implemented method for eliminating duplicate request submission from a browser to a server in a browser/server environment, the browser operating on a client computer processor having client memory and client processing means, the method comprising the steps of:
-
setting an indicator to a first state in the client memory;
detecting a request submission at the client to send a request to the server;
testing said indicator, andif said indicator is set to said first state, then submitting the request to the server, and resetting the indicator to a second state, if said indicator is set to said second state, ignoring the request submission and raising an error condition;
thereby reducing network traffic associated with duplicate request submissions. - View Dependent Claims (2, 3)
-
-
4. A computer implemented method for avoiding duplicate transaction entry in a browser client/server environment, the method comprising the steps of:
-
detecting duplicate submission requests at said client and not submitting said duplicate submission requests to the server thereby reducing network traffic associated with duplicate request submissions;
detecting duplicate submitted transactions at said server and rejecting said duplicates. - View Dependent Claims (5, 6, 7, 8)
setting an indicator to a first state in a client memory;
detecting a request submission at the client to send a request to the server;
testing said indicator, and if said indicator is set to said first state, then submitting the request to the server, and resetting the indicator to a second state, if said indicator is set to said second state, ignoring the request submission and raising an error condition.
-
-
6. The method of claim 5, wherein said detecting duplicate submitted transactions at the server comprises the steps of:
-
setting a unique transaction identifier for a form in a web page returned to said setting a unique transaction client to begin a transaction;
receiving a submitted request including said form and returned transaction identifier;
testing said returned transaction identifier to determine whether or not said transaction identifier has been previously returned;
if previously returned, raising an error condition.
-
-
7. The method of claim 6, wherein said transaction identifier is a numeric sequence number and wherein said process maintains in a memory means a value of the highest returned transaction identifier, and wherein said testing said returned transaction identifier tests said returned identifier against said maintained value.
-
8. The method of claim 4, wherein said detecting duplicate submitted transactions at the server comprises the steps of:
-
setting a unique transaction identifier for a form in a web page returned to said client to begin a transaction;
receiving a submitted request including said form and returned transaction identifier;
testing said returned transaction identifier to determine whether or not said transaction identifier has been previously returned;
if not previously returned, performing said requested transaction and setting said transaction identifier as being returned;
if previously returned, raising an error condition.
-
-
9. A client computer system for avoiding duplicate transaction processing in browser/server environment, the system comprising:
-
client memory means for storing an indicator of browser request submission;
client processing means for detecting a request to submit a browser request to a server;
client processing means for testing said indicator to determine whether said request has been previously submitted;
client response means for raising an error condition and ignoring said request if said test determines the request was previously submitted; and
client processing means for submitting said requested request and setting said indicator to indicate submission, if said request was not previously submitted; and
thereby reducing network traffic associated with duplicate request submissions.
-
-
10. A web server for detecting duplicate transaction requests in a stateless web server environment, said web server having memory means and processing means, the system comprising:
-
means for assigning a unique identifier to a form;
means for sending the unique identifier in a web page to the browser client;
means for receiving a browser request for a transaction including said unique identifier;
means for testing said unique identifier to determine whether or not a transaction having said unique identifier has been processed;
means for processing said request of said unique identifier has not been previously processed, said means for processing setting an indicator that said unique identifier has been processed; and
means for raising an error condition if said unique identifier has been processed. - View Dependent Claims (11, 12, 13)
means for requesting a unique identifier; and
means for inserting said unique identifier in an form definition in the web page.
-
-
12. The system of claim 11, wherein said form definition is in Hypertext Markup Protocol (HTTP) form and said inserting adds said unique identifier as a hidden variable.
-
13. The system of claim 11, wherein said form definition is in Hypertext Markup Protocol (HTTP) form and said inserting adds said unique identifier as an HREF URL variable.
-
14. A computer program product having a computer readable medium having computer program logic recorded thereon for avoiding duplicate transactions in a browser/server computer system, said computer program product comprising:
-
computer program product means for causing a client computer system to detect a browser request submission;
computer program product means for causing the client computer system to determine whether said request has been previously submitted;
computer program product means for causing the client computer to reject said requested submission is not previously submitted or returning an error if previously submitted;
thereby reducing network traffic associated with duplicate request transmissions. - View Dependent Claims (15, 16, 17, 18)
computer program product means for causing a computer to detect pointing device activation of an HTTP “
submit”
field.
-
-
16. The computer program product of claim 14, wherein said computer program product means for causing a computer to detect a browser request submission comprises:
computer program product means for causing a computer to detect pointing device activation of an HTTP hypertext link “
HREF”
field.
-
17. The computer program product of claim 14, wherein said computer program product means for causing a computer to test said unique identifier comprises:
-
computer program product means for causing a computer to store a value of said highest unique identifier for a client;
computer program product means for causing a computer to compare a returned unique identifier to said stored value.
-
-
18. The computer program product of claim 14, further comprising:
-
computer program product means for causing a server computer to assign a unique identifier for a transaction form and embed the unique identifier in a web page sent from the server computer to a browser in the client computer;
computer program product means for causing a server computer to intercept a returned form from the client computer having the unique identifier;
computer program product means for causing a server computer to test the unique identifier to determine whether or not the unique identifier has been previously submitted; and
computer program product means for causing a server computer to reject said submitted transaction if previously submitted or to process said transaction and update an indicator for the unique transaction identifier if the unique identifier has not been previously submitted.
-
Specification