999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

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

2018-03-26 02:56:14
成功 2018年10期
關(guān)鍵詞:頁面用戶

李 秋

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

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

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

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

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

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

(1)核心通信組件

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

(2)Web Service代理

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

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

(3)頁面方式代理

與客戶端的Web Service代理類似,ASP.NET AJAX異步通信層的服務(wù)器端部分同樣能夠為定義在ASP.NET頁面中的靜態(tài)服務(wù)器端方法自動生成客戶端的代理,因此也能夠大大簡化在客戶端javaScript中的調(diào)用過程。

(4)WebRequest組件

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

*XMLHttpExecutor組件

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

*WebRequestManaget組件

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

(5)支持組件

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

二、身份驗證代理

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

*用戶個性化代理

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

*JSON序例化

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

三、總結(jié)

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

猜你喜歡
頁面用戶
微信群聊總是找不到,打開這個開關(guān)就好了
大狗熊在睡覺
刷新生活的頁面
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
100萬用戶
如何獲取一億海外用戶
同一Word文檔 縱橫頁面并存
主站蜘蛛池模板: 午夜国产精品视频| 999国内精品久久免费视频| 国产成人a毛片在线| 91精选国产大片| 999国产精品| 成人精品免费视频| 99在线视频免费| 精品国产成人三级在线观看| 国模在线视频一区二区三区| 国产福利小视频高清在线观看| 日韩美一区二区| 日韩黄色在线| 粉嫩国产白浆在线观看| 一本色道久久88综合日韩精品| 在线免费看片a| 久久国产亚洲欧美日韩精品| 国产在线啪| 精品人妻系列无码专区久久| 国产亚洲精品自在久久不卡| 国产成人啪视频一区二区三区| 亚洲av色吊丝无码| 国产亚洲精品在天天在线麻豆 | 国产亚洲精品无码专| 久久久久人妻精品一区三寸蜜桃| 亚洲Av综合日韩精品久久久| 最近最新中文字幕在线第一页| 91青青草视频在线观看的| 国产欧美日韩一区二区视频在线| 热九九精品| 成人在线观看一区| 久久精品亚洲热综合一区二区| 国产精品欧美激情| 一区二区三区毛片无码| 国产成人av大片在线播放| www欧美在线观看| 四虎在线高清无码| 天堂在线亚洲| a在线亚洲男人的天堂试看| 久久激情影院| 国内精品视频| 911亚洲精品| 亚洲乱码在线播放| 国产免费久久精品44| 日韩黄色大片免费看| 国产成人1024精品| 91九色最新地址| 99久久99这里只有免费的精品| 国产高清不卡视频| 奇米影视狠狠精品7777| 久久久久人妻精品一区三寸蜜桃| 中文字幕乱码二三区免费| a级毛片毛片免费观看久潮| 国产69精品久久久久孕妇大杂乱| 久久久久亚洲Av片无码观看| 婷婷成人综合| 999国产精品| 99资源在线| 精品久久香蕉国产线看观看gif| 亚洲天堂啪啪| 色偷偷男人的天堂亚洲av| 久久精品国产91久久综合麻豆自制| 国禁国产you女视频网站| 久久激情影院| 久久午夜夜伦鲁鲁片无码免费| 日韩无码一二三区| 在线五月婷婷| 亚洲日韩在线满18点击进入| 无码高潮喷水专区久久| 人人91人人澡人人妻人人爽 | 最新国产午夜精品视频成人| 国内黄色精品| 亚洲欧美一区二区三区图片| 欧美激情成人网| 91免费国产在线观看尤物| 宅男噜噜噜66国产在线观看| 欧美日韩成人| 免费xxxxx在线观看网站| 日本手机在线视频| 国产色爱av资源综合区| 亚洲三级影院| 国产在线拍偷自揄拍精品| 91偷拍一区|