title: Remote scripting
text: # Remote scripting
  
  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.
  
  ## JavaScript Remote Scripting
  
  JavaScript Remote Scripting (JSRS) is a web development technique for creating interactive web applications using a combination of:
  
  * HTML (or XHTML)
  * The Document Object Model manipulated through JavaScript 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 XMLHttpRequest
  * A data format. XML with WDDX can be used as well as JSON or any other text format.
  
  Schematic
  
  A similar approach is Ajax, 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: Javascript Remote Scripting with PHP at the Wayback Machine (archived 2006-04-14)
  * MSDN article
  