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

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

asp:get請求寫法

2019-11-14 14:30:40
字體:
供稿:網(wǎng)友

寫在前面的話

xmlHttPRequest對象的open方法的第一個參數(shù)為request-type,取值可以為get或post.本篇介紹get請求.

get請求的目的,主要是為了獲取數(shù)據(jù).雖然get請求可以傳遞數(shù)據(jù),但傳遞數(shù)據(jù)的目的是為了告訴服務(wù)器,給我們什么內(nèi)容.

使用get請求時,參數(shù)都是隨url進(jìn)行傳遞的.

使用get請求時,容易被緩存,需注意緩存問題.

使用get請求時,服務(wù)器端請使用Request.QueryString[data]來獲取數(shù)據(jù).

發(fā)現(xiàn)的問題

我們在《完整的Ajax實例》一文中使用的就是get請求,當(dāng)時遇到以下問題:

  1. 如何創(chuàng)建在大部分瀏覽器中都能運(yùn)行的xmlhttpRequest對象.
  2. 使用get請求時存在緩存問題
  3. 中文亂碼問題

其中,第一個問題,在《XMLHttpRequest對象》一文中已經(jīng)解決;

對于第二個問題,產(chǎn)生的原因是:

get請求會每次訪問緩存,看其中是否有匹配的url,如果有,則返回緩存中的url,如果沒有,則向服務(wù)器發(fā)出請求.

解決方案:

1.在url上加個動態(tài)的變化參數(shù),以求每次訪問的是不同的url,這樣每次都會向服務(wù)器發(fā)出新的請求.

對于第三個問題,我們首先來看下產(chǎn)生亂碼的原因:

xmlHttp返回的數(shù)據(jù)默認(rèn)是uft-8,如果客戶端頁面是gb2312或其他編碼,就會產(chǎn)生亂碼

解決方案:

1.若客戶端是gb2312,則在輸出時,指定輸出流編碼

2.客戶端和服務(wù)器端都使用utf-8編碼

3.務(wù)必使用encodeURIComponent方法對參數(shù)進(jìn)行編碼

注意看例子:

例子

頁面HTML文件沒有變化,變化的知識js代碼,代碼如下:

<script type="text/javascript">    function btn_click() {       //創(chuàng)建XMLHttpRequest對象        var xmlHttp = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");       //獲取值        var username = document.getElementById("txt_username").value;       var age = document.getElementById("txt_age").value;       //配置XMLHttpRequest對象        //使用encodeURIComponent方法,對獲取的參數(shù)進(jìn)行編碼       //添加參數(shù),以求每次訪問不同的url,以避免緩存問題        xmlHttp.open("get", "Get.aspx?username=" + encodeURIComponent(username)            + "&age=" + encodeURIComponent(age) + "&random=" + Math.random());       //設(shè)置回調(diào)函數(shù)        xmlHttp.onreadystatechange = function () {            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {                document.getElementById("result").innerHTML = xmlHttp.responseText;            }       }        //發(fā)送請求,因為參數(shù)都在URL里,所以此處發(fā)送null        xmlHttp.send(null);    }</script>

服務(wù)器端:

protected void Page_Load(object sender, EventArgs e){    Response.Clear();    string username = Request.QueryString["username"];    string age = Request.QueryString["age"];    Response.Write("姓名:'" + username + "'<br/>年齡:" + age + "<br/>時間:'" + DateTime.Now.ToString() + "'");    Response.End();}




//來源于http://www.survivalescaperooms.com/oneWord/archive/2011/06/04/2072585.html

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 绍兴市| 东至县| 息烽县| 通化市| 四子王旗| 五莲县| 额济纳旗| 西昌市| 克什克腾旗| 关岭| 阿坝| 渭南市| 商河县| 临潭县| 温宿县| 梓潼县| 安新县| 寿光市| 许昌县| 织金县| 曲阳县| 甘谷县| 鸡泽县| 临漳县| 景东| 河源市| 兴山县| 罗田县| 海林市| 唐海县| 威海市| 内江市| 望都县| 怀远县| 富源县| 仁布县| 和田市| 老河口市| 江永县| 偏关县| 广南县|