Cross-domain communication technique for execution of web mashups
First Claim
1. A method for communicating requests from a Web mashup being executed within the context of a Web browser to a third-party Web service that does not support cross-domain calls from the Web browser in a manner that does not violate a Same Origin Policy observed by the Web browser, comprising:
- receiving in a workflow engine running in the context of the Web browser a first Web service request to the third-party Web service generated by the Web mashup;
responsive to receiving the first Web service request, generating in the workflow engine a cross-domain call to a proxy server that does support cross-domain calls from the Web browser and is not subject to the Same Origin Policy, wherein the cross-domain call includes information to be used by the proxy server in placing a second Web service request to the third-party Web service, and issuing the cross-domain call from the workflow engine to the proxy server; and
receiving in the workflow engine a callback from the proxy server that includes content returned from the third-party Web service responsive to the placement of the second Web service request by the proxy server; and
processing the callback in the workflow engine to deliver the content returned from the third-party Web service to the Web mashup.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method is described for communicating requests from a Web mashup being executed within the context of a Web browser to third-party Web services in a manner that does not violate the Same Origin Policy (SOP) observed by many Web browsers. In one embodiment, a workflow engine operating in the context of a Web browser executes a plurality of executable components comprising a Web mashup. The workflow engine transparently redirects Web service requests generated by the executing components to a proxy server that acts as an intermediate between the workflow engine and third-party Web services. The proxy server, which is not subject to SOP, transmits the Web service requests to the third-party Web service and obtains requested data therefrom. The proxy server further returns the requested data in a manner that is useable by the Web mashup components.
-
Citations
20 Claims
-
1. A method for communicating requests from a Web mashup being executed within the context of a Web browser to a third-party Web service that does not support cross-domain calls from the Web browser in a manner that does not violate a Same Origin Policy observed by the Web browser, comprising:
-
receiving in a workflow engine running in the context of the Web browser a first Web service request to the third-party Web service generated by the Web mashup; responsive to receiving the first Web service request, generating in the workflow engine a cross-domain call to a proxy server that does support cross-domain calls from the Web browser and is not subject to the Same Origin Policy, wherein the cross-domain call includes information to be used by the proxy server in placing a second Web service request to the third-party Web service, and issuing the cross-domain call from the workflow engine to the proxy server; and receiving in the workflow engine a callback from the proxy server that includes content returned from the third-party Web service responsive to the placement of the second Web service request by the proxy server; and processing the callback in the workflow engine to deliver the content returned from the third-party Web service to the Web mashup. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product comprising a computer-readable storage device having computer program logic recorded thereon for enabling a processing unit to communicate requests from a Web mashup being executed within the context of a Web browser to a third-party Web service that does not support cross-domain calls from the Web browser in a manner that does not violate a Same Origin Policy observed by the Web browser, the computer program logic comprising:
-
first means for enabling the processing unit to receive a first Web service request to the third-party Web service generated by the Web mashup; second means for enabling the processing unit to generate a cross-domain call to a proxy server that supports cross-domain calls from the Web-browser and is not subject to the Same Origin Policy, wherein the cross-domain call includes information to be used by the proxy server in placing a second Web service request to the third-party Web service, and to issue the cross-domain call to the proxy server responsive to receiving the first Web service request; third means for enabling the processing unit to receive a callback from the proxy server that includes content returned from the third-party Web service responsive to the placement of the second Web service request by the proxy server; and fourth means for enabling the processing unit to process the callback to deliver the content returned from the third-party Web service to the Web mashup. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A method for communicating requests from a Web mashup being executed within the context of a Web browser to a third-party Web service that does not support cross-domain calls from the Web browser in a manner that does not violate a Same Origin Policy observed by the Web browser, comprising:
-
receiving in a proxy server that supports cross-domain calls from the Web browser and is not subject to the Same Origin Policy a cross-domain call from a workflow engine running in the context of the Web browser, wherein the cross-domain call was issued by the workflow engine responsive to receiving a first Web service request generated by the Web mashup; responsive to receiving the cross-domain call, generating in the proxy server a second Web service request to the third-party Web server based on information included within the cross-domain call and placing the second Web service request to the third-party Web service; receiving content returned from the third-party Web service responsive to the placement of the second Web service request by the proxy server; and returning from the proxy server to the workflow engine a callback that includes the content returned from the third-party Web service. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification