一、URL重寫
1、URL重寫實質上是將網頁真實的URL隱藏起來,使用戶通過相應的虛擬URL訪問網頁資源:
1)滿足搜索引擎需要,實現搜索引擎中的排名優化。(SEO)
2)隱藏網頁實現技術,增強網站安全性。
3)提高網站的可用性和專業性。
4)使URL支持“可刪減”的需求。
2、正則表達式:
() 定義匹配組
\d 表示一個整數
+ 表示個數是1到無限
? 表示個數是0到1個
匹配組索引爲0的元素返回與表達式匹配的整個字符串,後續索引分別表示各匹配組
3、使用HttpContext.Current.RewritePath()進行URL重寫
二、頁面靜態化技術
1、頁面靜態化的優點:
1)有利於搜索引擎搜索。
2)頁面靜態化技術也使用後臺處理,沒有失去動態頁面易於維護的優勢。
3)有利於提升網頁的性能和安全。
2、實現頁面靜態化技術的方法:
1)僞靜態:僅通過URL重寫讓瀏覽器訪問地址爲靜態頁面,實際仍然執行的是動態頁面。
2)真靜態:使用程序(CMS)預先生成真正的靜態頁面。
3)折中法:在客戶端第一次訪問時即時生成靜態頁面。
三、AJAX技術(一)
1、AJAX(Asynchronous JavaScript and XML),應用於異步請求和局部刷新。
2、AJAX的4個組成部分:
1)XmlHttpRequest:AJAX技術的核心,用於提交請求和接受響應。
2)DOM:用於解析響應到客戶端的XML數據或其他文本數據。
3)CSS:用於呈現解析後的數據。
4)JavaScript:AJAX使用的編程語言。
3、AJAX的優勢與劣勢:
1)優勢:
不需要插件支持。
優秀的用戶體驗。
提高Web程序性能。
減輕服務器和帶寬的負擔。
2)劣勢:
瀏覽器對XmlHttpRequest對象的支持度不足。
破壞瀏覽器前進、後退按鈕的正常功能。
對搜索引擎的支持不足。
開發和調試工具欠缺。
四、AJAX技術(二)
1、創建XMLHttpRequest對象的語法:
1)IE瀏覽器:xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP");
2)非IE瀏覽器:xmlHttpRequest =new window.XMLHttpRequest();
2、XMLHttpRequest對象的readyState屬性:
0:未初始化狀態,此時創建了XMLHttpRequest對象
1:準備發送狀態,此時已經調用了XMLHttpRequest對象的open()方法,並且準備將HTTP請求發送到服務器端
2:已發送狀態,此時已經通過XMLHttpRequest對象的send()方法將一個請求發送到服務器端,但尚未收到響應
3:正在接收狀態,此時已經接收到HTTP響應的頭部信息,但是消息體部分尚未完全接收
4:完成響應狀態,此時已經完成了XMLHttpResponse響應的接收
2、XMLHttpRequest對象的responseText屬性:
當readyState屬性值爲4(完成響應的接收)時,responseText包含完整的響應文本。
3、XMLHttpRequest對象的status屬性:
1xx:信息響應類,表示接收到請求並且繼續處理。
2xx:處理成功響應類,表示動作被成功接收、理解和接受。
3xx:重定向響應類,爲了完成指定的動作,必須接受進一步處理。
4xx:客戶端錯誤,客戶請求包含語法錯誤或執行錯誤。
5xx:服務端錯誤,服務器不能正確執行一個正確的請求。
4、XMLHttpRequest對象的onreadystatechange事件:
在readyState屬性值每次發生改變時觸發。
5、XMLHttpRequest對象的open方法:
1)method參數:必須的,用於指定發送HTTP請求的方式(get、post、put、delete或head)。
2)url參數:指定XMLHttpRequest對象將請求發送到服務器響應的URL。
3)async參數:指定請求是否異步。若值是true,即爲異步請求。
4)username和password參數(可選):如果需要服務器驗證訪問用戶,可以設置這兩個參數。
6、XMLHttpRequest對象的send方法:
按照open()方法設定的參數發送請求。
7、XMLHttpRequest對象的setRequestHeader方法:
用於設置HTTP請求的頭部信息。該方法包含兩個參數,即header鍵名稱和鍵值。