国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

remote script文檔(轉(zhuǎn)載自微軟)(三)

2019-11-18 22:29:06
字體:
供稿:網(wǎng)友
文檔: 使 Remote Scripting 在服務(wù)器頁中有效

除了對客戶頁進(jìn)行配置以便于調(diào)用遠(yuǎn)程腳本外,您還必須對自己的服務(wù)器頁進(jìn)行配置,以便于對它們進(jìn)行接收。其做法包括下面這些步驟:

包含 remote scripting 服務(wù)器庫,并對其進(jìn)行初始化。


編寫客戶頁能調(diào)用的函數(shù)或者例程。


將自己的函數(shù)和例程顯露為方法。
缺省的情況是,客戶腳本所調(diào)用的某個(gè) asp 頁并不顯示在瀏覽器中──而是簡單地在服務(wù)器上執(zhí)行并將結(jié)果送到客戶端。因此,作為規(guī)則,您無需在 ASP 頁中包括進(jìn)任何 HTML 文本,而只需腳本。不過,還是有可能在某個(gè) ASP 頁上調(diào)用包括 HTML 文本的方法并作正常顯示的,只要您初始化了 remote scripting 服務(wù)器庫,并用下面描述的技巧顯露頁的方法。

包括并初始化 remote scripting 服務(wù)器庫

創(chuàng)建服務(wù)器端引用 Rs.asp 文件的 INCLUDE 語句,如下例所示:
<!--#INCLUDE FILE="../_ScriptLibrary/RS.ASP"-->


確保為 Rs.asp 文件指定正確路徑。INCLUDE 語句可以出現(xiàn)在用戶文件的任何位置。

將一個(gè)調(diào)用插入到RSDispatch方法中,當(dāng)您從客戶腳本調(diào)用服務(wù)器腳本時(shí),可用該方法找到正確過程。該調(diào)用可能看起來如下所示:
<% RSDispatch %>


RSDispatch 調(diào)用必須是運(yùn)行在該頁上的第一個(gè)服務(wù)器腳本。按慣例,典型做法是將其放到文件頭部。

在合適的初始化動(dòng)作中,創(chuàng)建用戶將從客戶腳本中作為方法調(diào)用的函數(shù)或者例程。您可以用任何腳本語言書寫過程。過程可以接受任意數(shù)目的參數(shù),但參數(shù)只可以為字符串、數(shù)字、日期,或者其他簡單數(shù)據(jù)類型──客戶不能將結(jié)構(gòu)化數(shù)據(jù)(例如,對象或者數(shù)組)作為參數(shù)。

注意 當(dāng)您將參數(shù)從客戶腳本傳遞到服務(wù)器腳本時(shí),它們即被轉(zhuǎn)換為字符串。如果用戶期望自己的服務(wù)器方法中有不同數(shù)據(jù)類型,可以在方法腳本內(nèi)部轉(zhuǎn)換之。

在服務(wù)器腳本中創(chuàng)建了過程后,您必須將它們作為方法顯露出來。為了達(dá)到該目的,您可以創(chuàng)建一個(gè) javaScript 公共描述對象,并列出用戶希望顯露的方法。

顯露方法

創(chuàng)建一個(gè) public_description 對象,該對象為您的方法指定構(gòu)造函數(shù)。下面的示例命名構(gòu)造函數(shù)為 MyServerMethods:
<SCRIPT LANGUAGE="Javascript">
   var public_description = new MyServerMethods();


創(chuàng)建您在 public_description 對象中指定的構(gòu)造函數(shù)。在構(gòu)造函數(shù)內(nèi)部,指定用戶希望顯露的方法名,以及它們相應(yīng)的函數(shù)或者例程名。用戶所使用的語法取決于用戶是在 JavaScript 中還是在 VBScript 中創(chuàng)建自己的方法。可使用下面的語法:
functionconstructor(){
   this.methodName = functionName    //對于 JavaScript 方法來說
    // 對于用 VBScript 書寫的方法,使用下面的語法
   this.methodName = Function('p1','p2','return functionName(p1,p2)')
}

注意 JavaScript 是大小寫敏感的,因此用戶必須根據(jù)約定正確大寫。

其中:

methodName   將被顯露的方法名。


functionName   服務(wù)器頁中實(shí)現(xiàn) methodName 的函數(shù)名。


p1, p2  傳遞給方法的參數(shù)列表──如果有參數(shù)的話。僅當(dāng)該方法在 VBScript 中實(shí)現(xiàn)時(shí),才能以這種方式顯式地聲明參數(shù)。參數(shù)名在構(gòu)造函數(shù)內(nèi)必須是一致的,但不需要和用戶在方法本身中所使用的參數(shù)名匹配。用戶不需要顯式地聲明傳遞給 JavaScript 中所實(shí)現(xiàn)方法的參數(shù)。
下面的示例顯示了一個(gè)完整的 ASP 頁,該頁顯露兩個(gè)方法,square 和 add,這可以從客戶腳本中調(diào)用。square 方法是在 JavaScript 中實(shí)現(xiàn)的,而 add 方法則是在 VBScript 中實(shí)現(xiàn)的。

<% RSDispatch %>
<!--#INCLUDE FILE="../_ScriptLibrary/RS.ASP"-->

<SCRIPT RUNAT=SERVER LANGUAGE="JavaScript">
   var public_description = new MyServerMethods();
   function MyServerMethods()
   {
      this.square = squareNumber;
      this.add = Function( 'n1','n2','return addNumbers(n1,n2)' );
   }

   function squareNumber(numberToSquare){
      return numberToSquare * numberToSquare;
   }
</SCRIPT>

<SCRIPT RUNAT=SERVER LANGUAGE="VBScript">
Function addNumbers(num1, num2)
    ' 數(shù)據(jù)類型發(fā)生轉(zhuǎn)換,因?yàn)樗鼈冏鳛樽址M(jìn)行傳遞
    addNumbers = CInt(num1) + CInt(num2)
End Function
</SCRIPT>

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 西乌珠穆沁旗| 游戏| 土默特右旗| 潼南县| 革吉县| 都匀市| 黄石市| 宜昌市| 鄂尔多斯市| 六盘水市| 靖安县| 宁波市| 渝中区| 通州区| 手机| 清镇市| 越西县| 门源| 新闻| 札达县| 齐齐哈尔市| 皮山县| 新竹市| 天等县| 高台县| 兰西县| 平塘县| 囊谦县| 长乐市| 堆龙德庆县| 龙门县| 罗城| 行唐县| 贵南县| 临潭县| 荔波县| 通化县| 揭阳市| 峨眉山市| 土默特左旗| 开江县|