Remote Scripting
Encyclopedia
Remote Scripting is a technology which allows scripts and programs that are running inside a browser to exchange information with a server. The local scripts can invoke scripts on the remote side and process the returned information.
The earliest form of asynchronous remote scripting was developed before XMLHttpRequest
existed, and made use of very simple process: a static web page
opens a dynamic web page
(e.g. at other target frame) that is reloaded with new JavaScript content, generated remotely on the server side.
The XMLHttpRequest
and similar "client-side script remote procedure call
" functions, open the possibility of use and triggering web services from the web page interface.
The web development community subsequently developed a range of techniques for remote scripting in order to enable consistent results across different browsers. Early examples include JSRS library from 2000, the introduction of the Image/Cookie technique in 2000.
Schematic
A similar approach is Ajax
, though it depends on the XmlHttpRequest in newer web browsers.
The earliest form of asynchronous remote scripting was developed before XMLHttpRequest
XMLHttpRequest
XMLHttpRequest is an API available in web browser scripting languages such as JavaScript. It is used to send HTTP or HTTPS requests directly to a web server and load the server response data directly back into the script. The data might be received from the server as XML text or as plain text...
existed, and made use of very simple process: a static web page
Static web page
A static web page is a web page that is delivered to the user exactly as stored, in contrast to dynamic web pages which are generated by a web application....
opens a dynamic web page
Dynamic web page
A dynamic web page is a kind of web page that has been prepared with fresh information , for each individual viewing. It is not static because it changes with the time , the user , the user interaction , the context A dynamic web page is a kind of web page that has been prepared with fresh...
(e.g. at other target frame) that is reloaded with new JavaScript content, generated remotely on the server side.
The XMLHttpRequest
XMLHttpRequest
XMLHttpRequest is an API available in web browser scripting languages such as JavaScript. It is used to send HTTP or HTTPS requests directly to a web server and load the server response data directly back into the script. The data might be received from the server as XML text or as plain text...
and similar "client-side script remote procedure call
Remote procedure call
In computer science, a remote procedure call is an inter-process communication that allows a computer program to cause a subroutine or procedure to execute in another address space without the programmer explicitly coding the details for this remote interaction...
" functions, open the possibility of use and triggering web services from the web page interface.
The web development community subsequently developed a range of techniques for remote scripting in order to enable consistent results across different browsers. Early examples include JSRS library from 2000, the introduction of the Image/Cookie technique in 2000.
JavaScript Remote Scripting
JavaScript Remote Scripting (JSRS) is a web development technique for creating interactive web applications using a combination of:- HTMLHTMLHyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....
(or XHTMLXHTMLXHTML is a family of XML markup languages that mirror or extend versions of the widely-used Hypertext Markup Language , the language in which web pages are written....
) - The Document Object ModelDocument Object ModelThe Document Object Model is a cross-platform and language-independent convention for representing and interacting with objects in HTML, XHTML and XML documents. Aspects of the DOM may be addressed and manipulated within the syntax of the programming language in use...
manipulated through JavaScriptJavaScriptJavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
to dynamically display and interact with the information presented - A transport layer. Different technologies may be used, though using a script tag or an iframe is used the most because it has better browser support than XMLHttpRequestXMLHttpRequestXMLHttpRequest is an API available in web browser scripting languages such as JavaScript. It is used to send HTTP or HTTPS requests directly to a web server and load the server response data directly back into the script. The data might be received from the server as XML text or as plain text...
- A data format. XMLXMLExtensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....
with WDDXWDDXWDDX is a programming-language-, platform- and transport-neutral data interchange mechanism to pass data between different environments and different computers...
can be used as well as JSONJSONJSON , or JavaScript Object Notation, is a lightweight text-based open standard designed for human-readable data interchange. It is derived from the JavaScript scripting language for representing simple data structures and associative arrays, called objects...
or any other text format.
Schematic
A similar approach is Ajax
Ajax (programming)
Ajax is a group of interrelated web development methods used on the client-side to create asynchronous web applications...
, though it depends on the XmlHttpRequest in newer web browsers.
Libraries
- Brent Ashley's original JSRS library released in 2000
- BlueShoes JSRS with added encoding and OO RPC abstractions
- Simple Tutorials
- MSDN article
- Echo is a Java framework for developing object-oriented, event-driven Web applications.