• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      淺析異步通信層的架構(gòu)在ASP.NET 程序中的應(yīng)用

      2018-03-26 02:56:14
      成功 2018年10期
      關(guān)鍵詞:身份驗(yàn)證服務(wù)器端頁(yè)面

      李 秋

      江西現(xiàn)代職業(yè)技術(shù)學(xué)院 江西南昌 330095

      當(dāng)客戶端第一次請(qǐng)求服務(wù)器端(例如用戶在瀏覽器中輸入某個(gè)ASP.NET AJAXASP.NET AJAX應(yīng)用程序的URL)時(shí),服務(wù)器端的ASP.NET頁(yè)面將初始的頁(yè)面UI以及行為發(fā)送給客戶端。

      之后,客戶端和服務(wù)器端之間的通信將傳遞純粹的數(shù)據(jù)-——數(shù)據(jù)的生成和保存由服務(wù)器端業(yè)務(wù)層和數(shù)據(jù)層完成,數(shù)據(jù)的顯示方式以與用戶與數(shù)據(jù)之間的交互(包括修改、添加和刪除)則由客戶端表示層完成。至于客戶端與服務(wù)器端傳遞數(shù)據(jù)的實(shí)現(xiàn)過(guò)程,則正是我們本章探討的主題——-異步通信層來(lái)完成的。

      簡(jiǎn)要了解ASP.NET AJAX中的異步通信層結(jié)構(gòu),以及客戶端和服務(wù)器端的通信過(guò)程之后,我們接下來(lái)更深入一步,分別探究ASP.NET AJAX中異步通信層的客戶端和服務(wù)器端的具體架構(gòu)。

      一、客戶端架構(gòu)

      ASP.NET AJAX異步通信層的客戶端部分包含了若干個(gè)javaScript組件,ASP.NET AJAX異步通信層的客戶端部分中,眾多的javaScript組件可以分為兩大類(lèi):核心通信組件以及支持組件。下面我們分別介紹。

      (1)核心通信組件

      核心通信組件是指實(shí)現(xiàn)與服務(wù)器端Web Service交互所必需的客戶端腳本組件。Web Service代理、頁(yè)面方式代理、webRequest組件、webRequestManager組件以及XMLHttp-Executor組件均屬于核心通信組件。

      (2)Web Service代理

      在ASP.NET AJAX中,Web Service的客戶端代理可以由服務(wù)器端的異步通信層自動(dòng)生成。然后開(kāi)發(fā)者即可在javaScript中通過(guò)這些Web Service代理非常直觀地對(duì)服務(wù)器端的WebService方式進(jìn)行異步調(diào)用。調(diào)用這類(lèi)代理的語(yǔ)法和服務(wù)器端代碼(例如C#或vb.net)的調(diào)用語(yǔ)法非常類(lèi)似——這也正是“代理”的含義。關(guān)于客戶端的WebService代理與普通的HTTP請(qǐng)求一樣,調(diào)用服務(wù)器端的Web Service方法也可以使用GET和POST兩種方式。

      以GET方式進(jìn)行調(diào)用,那么需要為Web Method添加{scriptMethod(UsehttpGet=true)}屬性。

      (3)頁(yè)面方式代理

      與客戶端的Web Service代理類(lèi)似,ASP.NET AJAX異步通信層的服務(wù)器端部分同樣能夠?yàn)槎x在ASP.NET頁(yè)面中的靜態(tài)服務(wù)器端方法自動(dòng)生成客戶端的代理,因此也能夠大大簡(jiǎn)化在客戶端javaScript中的調(diào)用過(guò)程。

      (4)WebRequest組件

      *WebRequest組件是異步通信層中客戶端部分的“經(jīng)紀(jì)人”,用來(lái)收集發(fā)起異步HTTP請(qǐng)求所用到的參數(shù),例如請(qǐng)求地址、請(qǐng)求的主體部分、超時(shí)設(shè)定以及用戶上下文信息等。一般來(lái)講,WebRequest組件是我們使用ASP.NET AJAX異步通信層創(chuàng)建并發(fā)起一次 HTTP請(qǐng)求唯一需要打交道的客戶端組件。當(dāng)然,若是該HTTP請(qǐng)求的目標(biāo)是某個(gè)Web Service或某個(gè)ASP.NET頁(yè)面中的靜態(tài)方式,那么則毫無(wú)疑問(wèn)應(yīng)該選用主動(dòng)生成的Web Service或頁(yè)面方法的客戶端代理,這樣講會(huì)更加簡(jiǎn)單。

      *XMLHttpExecutor組件

      XMLHttpExecutor組件是異步通信層客戶端部分中最為“勞苦功高”的“實(shí)干者”,它將使用原始的XMLHttpRequest對(duì)象完成客戶端與服務(wù)器端的通信工作。此外,XMLHttpExecutor類(lèi)繼承于 WebRequest Executor基類(lèi),WebRequest Executor基類(lèi)為上層調(diào)用者提供了客戶端與服務(wù)器端通信工作的抽象,而XMLHttpExecutor只是WebRequestExecutor的一種實(shí)現(xiàn)。

      *WebRequestManaget組件

      WebRequestManaget組件是異步通信層客戶端部分中的“大管家”,用來(lái)維護(hù)并協(xié)調(diào)WebRequest組件與XMLHttpExecutor組件之間的關(guān)系,保證異步通信流程的順暢。

      (5)支持組件

      支持組件是指對(duì)WsbService或頁(yè)面方法代理進(jìn)行再次封裝的組件,包括身份驗(yàn)證代理和用戶個(gè)性化代理。實(shí)現(xiàn)客戶端/服務(wù)器端序例化/反序例化功能的組件也屬于支持組件,即JSON序例化組件。

      二、身份驗(yàn)證代理

      身份驗(yàn)證代理組件是由服務(wù)器端驗(yàn)證服務(wù)自動(dòng)生成的。通過(guò)使用身份驗(yàn)證代理組件,即可在客戶端用JavaScript以異步回送,也就是Ajax的方式,實(shí)現(xiàn)用戶的登錄/注銷(xiāo)功能,而無(wú)需完成傳統(tǒng)方式中的一次整頁(yè)回送。

      *用戶個(gè)性化代理

      用戶個(gè)性化代理組件是由服務(wù)器端個(gè)性化服務(wù)自動(dòng)生成的。與身份驗(yàn)證代理組件的功能非常類(lèi)似,通過(guò)使用用戶個(gè)性化代理組件,即可在客戶端用JavaScript以異步回送的方式獲取/修改/更新用戶的個(gè)性化信息,同樣避免了傳統(tǒng)方式中的一次整頁(yè)回送。

      *JSON序例化

      JSON序例化組件能夠把需要發(fā)送給服務(wù)器端的數(shù)據(jù)序例化程JSON格式,還能夠?qū)⒎?wù)器端返回的JSON字符串解析程真正的JavaScript對(duì)象(使用JavaScript的eval()函數(shù))。

      三、總結(jié)

      在ASP.NET開(kāi)發(fā)中需要使用異步通信來(lái)實(shí)現(xiàn)不同架構(gòu)之間的數(shù)據(jù)交互是非常必要的,可以使用Web Service代理、頁(yè)面方式代理等多種方式來(lái)完成。

      猜你喜歡
      身份驗(yàn)證服務(wù)器端頁(yè)面
      大狗熊在睡覺(jué)
      刷新生活的頁(yè)面
      Linux環(huán)境下基于Socket的數(shù)據(jù)傳輸軟件設(shè)計(jì)
      HID Global收購(gòu)Arjo Systems擴(kuò)大政府身份驗(yàn)證業(yè)務(wù)
      在Windows中安裝OpenVPN
      更安全的雙重密碼保護(hù)
      CHIP新電腦(2015年3期)2015-04-02 17:55:46
      身份驗(yàn)證中基于主動(dòng)外觀模型的手形匹配
      ASP.NET中的Forms身份驗(yàn)證的研究
      網(wǎng)頁(yè)防篡改中分布式文件同步復(fù)制系統(tǒng)
      同一Word文檔 縱橫頁(yè)面并存
      左权县| 陆丰市| 东光县| 中方县| 武威市| 西华县| 崇左市| 石河子市| 墨脱县| 宁化县| 云林县| 嘉峪关市| 苗栗市| 乌鲁木齐市| 温州市| 鞍山市| 涞源县| 元谋县| 常宁市| 樟树市| 东兰县| 江北区| 焦作市| 南靖县| 宁晋县| 年辖:市辖区| 齐齐哈尔市| 综艺| 潼南县| 象山县| 凌云县| 武冈市| 衡水市| 巴彦淖尔市| 定西市| 宝清县| 璧山县| 剑阁县| 海城市| 库伦旗| 进贤县|