|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全文档:挪用RemoteScripting办法异步
Remotescripting向您供应了异步伐用服务器办法的选择──当实行服务器办法时,用户的客户剧本持续运转。异步伐用remotescripting办法使得您能够制止使用程序用户接口速率的减慢,由于您能够在实行服务器剧本的同时持续事情。
注重假如您的使用程序必要,那末也能够同步伐用服务器办法。有关具体信息,请参阅同步伐用RemoteScripting办法。
异步伐用某个remotescript相似于同步伐用。不外,当发生挪用时,您要指定多至三个附加参数:
当服务器办法完成处置时,在用户的客户剧本中有一个被挪用的JavaScriptcallbackfunction。比方,假如用户的remotescripting办法实行一次数据库反省,那末回调函数大概失掉远程挪用前往的反省值,并在页面上的某个控件中显现之。
一个可选的JavaScript毛病回调函数──假如异步伐用时碰到毛病将挪用之。
一个可选的高低文参数。这是用户传送给办法并在今后传回用户的数据。它典范地用于匡助您决意在本人的回调函数中正挪用甚么办法,比方,假如您正在将一切远程剧本挪用回传给某个回调函数。
相似于同步伐用,异步伐用将创立一个挪用工具,该工具撑持包括被挪用历程的前往值和形态信息的属性。比方,某个remotescripting办法的前往值可在挪用工具的return_value属性中取得。在异步伐用时,挪用工具status属性向用户供应关于挪用形态的信息。
当您发生异步伐用时,挪用工具作为一个参数传送到回调函数中。如许您就能够在挪用剧本中对其举行测试(比方,决意呼唤的形态),大概在回调函数中测试(比方,取得办法的前往值)。
假如您已创立了对某个服务器页的工具援用,那末您就能够用尺度的object.method语法来挪用办法。有关创立工具援用的具体信息,请参阅作为工具援用ASP页。
怎样异步伐用服务器办法
假如用户已创立了对服务器页的工具援用,那末能够用上面的语法。因为您必需传送回调函数的函数指针,因而关于异步办法挪用来讲,您必需用JavaScript。
callObject=ASPObject.methodName(p1,p2[,...],
callbackFunction,errorCallbackFunction,context)
-大概-
假如您还没有创立工具援用,那末能够挪用RSExecute函数,所用语法以下:
callobject=RSExecute(url,methodName,p1,p2[,...],
callbackFunction,errorCallbackFunction,context)
个中:
ASPObject您先前用RSGetASPObject办法创立的工具援用。有关具体信息,请参阅作为工具援用ASP页。
callObject在完成remotescripting挪用时将被实例化的挪用工具名。您无需创立在挪用remotescript之前创立该工具;RSExecute办法为您创立该工具。
url包括您想要实行的远程剧本的ASP页的URL。服务器页必需已被设置为使得服务器页中的RemoteScripting无效中所形貌的那样。服务器页必需在用户从中哀求以后客户页的服务器上。
methodName您想要实行的服务器页上的办法名。
p1,p2,...methodName中办法所必要的任何参数。参数是经由过程值举行传送的。您能够传送复杂的数据范例,好比数值大概文本值,但不克不及传送数组大概工具。
注重当把参数从客户传送给服务器时,它们被转换为字符串。要确保在利用这些参数值时,您的服务器办法将它们转换为符合的数据范例。有关具体信息,请参阅使得服务器页中的RemoteScripting无效。
callbackFunction您的客户剧本中JavaScript函数的函数指针,当完成对remotescripting办法的挪用时将挪用该函数。因为用户正在传送的是一个指针,因而不要在引号中包含其名字。在RSExecute挪用中包含回调函数名意味着您想要异步实行remotescripting办法。
errorCallbackFunction用户的客户剧本中某个可选JavaScript函数的函数指针,假如remotescripting办法碰到一个毛病,将挪用该函数。因为您所传送的是一个指针,因而不要在引号中包含其名。关于remotescripting中毛病的具体信息,请参阅反省毛病。
context您传送给remotescripting办法并回传给您的一个可选值。您能够在本人的回调函数顶用本人以为有效的恣意体例利用该值。
比方,上面按钮btnSquare的客户剧本onclick处置程序挪用服务器办法square来对文本框txt1中的指定命值举行平方运算。当实行了该办法后,它挪用函数showResults。操纵符名(“求平方”)在高低文参数中举行传送。
<SCRIPTLANGUAGE="JavaScript"for="btnSquare"event="onclick">
rsMath=RSGetASPObject("../myPages/RSMath.asp")
number1=txt1.value;
context="squaring";
co=rsmath.square(number1,showResults,context);
</SCRIPT>
利用RSExecute而不必工具援用的一样示比方下所示:
<SCRIPTLANGUAGE="JavaScript"for="btnSquare"event="onclick">
number1=txt1.value;
context="squaring";
co=RSExecute("RSmath.asp","square",number1,showResults,context);
</SCRIPT>
函数showResults是先前示例的回调函数,大概以下所示:
<SCRIPTLANGUAGE="JavaScript">
functionshowResults(co){
typeOp=co.context;
rValue=co.return_value;
txt2.value="Resultof"+typeOp+"operation="+rValue;
}
<SCRIPT>
在这类情形下,showResults函数可被用作一样平常意义上的回调函数,以显现任何运算值。该函数指明用户大概怎样利用挪用工具的context属性(当挪用remotescripting函数时对之举行初始化),以便于决意怎样挪用回调函数。
测试异步伐用
用户能够对某个远程挪用的形态举行测试,以便于弄清挪用是不是乐成。假如用户已举行了异步伐用,那末用户能够测试是不是已完成挪用。
怎样测试某个远程挪用的形态
在挪用剧本中,取得挪用工具的status属性值,它能够包括以下值中的任一个:
值形貌
-1失利
0完成
1挂起(仅在异步伐用过程当中无效)。
上面的示例显现了同步伐用某个叫做square的remotescripting办法,然后在页面上的某个文本框中显现挪用形态的客户剧本。
<SCRIPTLANGUAGE="JavaScript"for="btnSquare"event="onclick">
number1=txt1.value;
context="squaring";
co=RSExecute("RSmath.asp","square",number1);
if(co.status==-1)
{txt2.value="Callfailed";}
else
{txt2.value="Callsucceeded,returnvalue="+co.return_value;}}
</SCRIPT>
关于毛病的具体信息,请参阅反省毛病。
把持异步伐用
举行异步伐用时,可用两种体例来把持它:
守候挪用完成。这将挂起客户剧本处置,直到完成remotescripting挪用,无效地将异步伐用转换为同步伐用。假如您在本人的客户剧本中到了异步伐用供应所需信息的阶段,那末便可如许做。为了守候,能够挪用挪用工具的守候办法。
作废挪用,若要如许做,能够挪用挪用工具的作废办法。
我想详细了解ASP整站代码与PSP整站代码有什么优缺点,那个更好,更安全,更用容易维护,和管理。。。 |
|