These days are using the web-based remote procedure call protocol, unintentionally searching some information, so keep it down for yourself and all reference.
Web Remote Process Call (hereinafter referred to as WebRPC) is a recent hotspot for a remote method without refreshing the page, is a nearest hotspot; under some occasions, he even becomes an irreplaceable implementation. WebRPC implementation experiences from ordinary URL read, hidden frames, iframe, XMLHTTP and even Flash, etc. This article will list the current WebRPC scheme (product) and make simple evaluation.
Evaluation will be carried out in the following aspects: client implementation, server-side implementation, whether to support serialization / reverse sequence, sequential support is complete (atom type, object type), whether to support asynchronous / Synchronously. Note that due to the remote call of the web mode, it is not available. The author did not use WebRPC experience in enterprise applications, but in entertainment, online games have been considerable use. These applications have been discussed in detail in "WEB Application for Asynchronous Messages (AMOWA), interested in reading this article in the product guide section.
1 MSRS (Microsoft Remote Scripting) Address: http://msdn.microsoft.com/library/default.asp? URL = / library / en-us / rmscpt / html / rmscpt1.asp Description: Early, browsing on the web page The function is limited. The appearance of Applet provides a platform for MSRS. In this scenario, MSRS interacts with the server through an Applet class and the parameter configuration on the page, thereby implementing remote calls. This technology actually handed a page not refreshed to a non-visible applet called RSProxy.class. I have seen the early online web chess adopt this program. Advantages: It is easy to easily cross your browser; Disadvantages: The server side uses Microsoft ASP, and Applet is slowly loaded; the data type serialization / deserialization is not supported.
2 JSRS (JavaScript remote scripting) Address: http://www.blueshoes.org/en/javascript/jsrs/ Introduction: Support two data access methods: HTTP GET mode (dynamically loaded JS file), http post mode (with JS) Dynamically create an IFRAME where a form is submitted). Do not refresh the page, support serialization / deserialization of simple data.
3 XML-RPC address: http://www.xmlrpc.org/ Introduction: XML-RPC defines a protocol specification, because of its lightweight, conceptual integrity, there are currently most languages, including Java (Apache XML-RPC), PHP, JavaScript, Vbscript, Python, etc. The largest communication method BLOG protocol, the management method also follows the XML-RPC specification. Advantages: Most languages support, simple, specification. Disadvantages: Java implementation is limited to data type serialization
4 DWR (Direct Web Remoting) Address: https: //dwr.dev.java.net/ Introduction: A little thing that proposes appropriate concept at the appropriate time. With XMLHTTP delivery request, the server side returns the result after using the reflection to find the corresponding method. More creative is that he will dynamically convert the server-side code dynamically converted to the corresponding JS code, and the front end can explicitly call. Simple, you can get started as a WebRPC study. Data serialization 5 JSON-RPC address: http://oss.metaparadigm.com/jsonrpc/ Introduction: A Data Exchange Protocol JSON (JavaScript Object Notation, http://www.crockford. COM / JSON /) As a protocol basis, the data call is performed, and the XMLHTTP sends / accept requests, supports the complete data serialization / reverse sequence. At present, the Jason Web framework uses JSON-RPC as the underlying mode.
6 BURLAP (http://caucho.com/burlap/index.xtp) Introduction: Maybe it will be strange, why Burlap can also calculate a remote protocol. In fact, Burlap is basically the same as the HESSIAN implementation (the former is binary, the latter is text), and any of the above products can be exceeded in the integrity of the protocol. Currently I have implemented the code of JS calling the Burlap service, which is the most elegant implementation in all remote call mode.
7 XINS (XML Interface for Network Services) Address: http://xins.sourceForge.Net/index.html Introduction: According to the official website, SOA Java XML Code_Generation - Complexity => xins. This huge thing needs to define a package of description files before you can call in HTML. From the appearance, this is the most like solution. Not much to understand, do not evaluate.
8 WebService, SOAP Introduction: In addition to Microsoft has a WebService.htc control, Mozilla also has the corresponding webservice access method. Therefore, it is also possible to access WebService in HTML. Just this agreement is too bulky unless it is necessary, no one will be used in the web client.
Points from Michael Chen's Blog