Ajaxは知っての通り、ブラウザ内で非同期通信を行うJavascriptの技術です。
1999年にIE5にXMLHttpRequest実装されてから、2005年にAjaxという言葉が生まれて、現在では、SPA開発などで欠かせない技術になってきました。
こういった非同期通信の技術はAjax以外にも1999年にMicrosoftが「Remote Scripting」を出していましたが、いつの間にかに無くなっていた。
(確か、IE7かIE8出たあたりで使えなくなってた気がする)
あたらめて情報を探してみたけど、ネット上の情報が少なすぎる。
- Wikipedia Remote Scripting
- Microsoft公式のRemote Scripting によってクライアントとサーバーの境界線を曖昧にする
- Microsoft DocsのRemote Scripting
ぐらいか
基本的な仕組みは、
クライアントサイドはXMLHttpRequestではなく、
Microsoft Java VMの独自のJavaApplet(Rsproxy.class)から、
サーバーサイドのClassc ASP(Active Server Pages)上で設定したメソッドをよびだす。
※Microsoft VMのサポートは2007年に終了
※Classc ASP(Active Server Pages)はWindows2016サポートあり。2019は?
クライアントサイドからは下記のようにRSExecuteを使ってairport.aspページのvalidateAirportメソッドをtxtDepart.valueの引数で呼び出す。
<script language="JScript" src="../_ScriptLibrary/rs.htm"></script>
<script language="JScript">
RSEnableRemoteScripting("../_ScriptLibrary");
</script>
<script language="JScript">
function txtDepart_onblur()
{
var objTest
/* Call the validateAirport Method on airport.asp
When it's done call me back on airportCallBack */
objTest = RSExecute("airport.asp","validateAirport",txtDepart.value)
// Check to see if we have an error
if (objTest.return_value != true)
{
// Display the error in the div
alert(objReturn.return_value);
}
}
</script>
そうするとサーバーサイド側ではVBScriptのvalidateAirportメソッドを呼び出されて値を返す。
<%@ LANGUAGE=VBSCRIPT %>
<%
' Define my Airport class
Class clsAirport
public function validateAirport(strAirport)
if lcase(strAirport) = "london" then
validateAirport = "Which London airport?" & vbCRLF
validateAirport = validateAirport & "Heathrow (LHR)" & vbCRLF
validateAirport = validateAirport & "Gatwick (LGW)" & vbCRLF
validateAirport = validateAirport & "Stansted (LST)" & vbCRLF
else
validateAirport = true
end if
end function
end class
set public_description = new clsAirport
' Call RSDispatch to use the public_description object and make
its methods available for Remote Scripting Calls
RSDispatch %>
<!--#INCLUDE FILE="../_scriptlibrary/rs.asp"-->
ブラウザからJavascriptを使ってサーバーと通信しているということで、
機能的にはAjaxと同じようなことが出来ているけど、
サーバーサイドはClassc ASP(Active Server Pages)が必須で、クライアント側はIEでMicrosoft VMが必須ということでということで、いつの間にかに消えてしまった。
一時期使う機会があったが、それ以外でこれを使っているところは見た事がない。