日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java原生的ajax怎么写_原生Ajax代码实现

發布時間:2024/7/23 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java原生的ajax怎么写_原生Ajax代码实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Ajax

Asynchronous JavaScript And XML

異步:

指一段程序執行時不會阻塞其他程序執行,其表現形式為程序的執行順序不依賴程序本身的書寫順序 ,相反的則為同步,

自己理解的就是類似百度的搜索框輸入內容時的提示相關的內容功能,ajax可以在不刷新整體頁面的情況下,進行從后臺取值,并返回數據到頁面,其優勢在于不阻塞程序的運行,從而提升整體上的執行效率。

現實生活中,打電話是同步,發短信是異步

XMLHttpRequest

瀏覽器內置對象,用于在后臺與服務器通信,由此我們可以對頁面進行部分更新,更不進行刷新整個頁面的操作。

當以post方式請求時候,請求頭中設置了“Content-type”,“application/x-www-form-urlencoded”,get方式請求就不需要,

api詳解:

xhr.open(); 發起請求,可以是get或者post方式

xhr.setRequestHeader(); 設置請求頭

xhr.send(); 發送請求主體,get方式使用null作為主體

xhr.onreadystatechange(){} 監聽響應狀態

xhr.readyState = 0:UNSENT open尚未啟用

xhr.readyState = 1:OPENED open 已調用

xhr.readyState = 2:headers_received 接收到頭消息

xhr.readyState = 3:loading 接收到主體

xhr.readyState = 4:done 響應完成

xhr.status 表示響應碼 200 為正常

xhr.statusText 表示響應信息

xhr.getAllResponseHeaders() 獲得全部響應頭信息

xhr.responseText:響應主體

//瀏覽器兼容處理 undefined未定義的 因為只有ie瀏覽器中存在這個ActiveXObject對象

if(typeof ActiveXObject !=='undefined'){

alert("ie");

}else{

alert("ii");

}

IE瀏覽器創建ajax對象:

var xhr = new ActiveXObject("Microsoft.XMLHTTP");//最原始的方式 --

var xhr = new ActiveXObject("Msxm12.XMLHTTP");

var xhr = new ActiveXObject("Msxm12.XMLHTTP.3.0");

var xhr = new ActiveXObject("Msxm12.XMLHTTP.5.0");

var xhr = new ActiveXObject("Msxm12.XMLHTTP.6.0");//維護的最高版本

主流瀏覽器創建對象(Firefix火狐,Chrome谷歌,safari新浪,opera北歐瀏覽器,IE7以上)

var xhr = new XMLHttpRequest();

對服務器發起請求:

瀏覽器方式請求:打開瀏覽器,輸入地址欄,回車發起請求

常用狀態碼及其含義: 404 沒找到頁面(not found) 403 禁止訪問(forbidden) 500 內部服務器出錯(internal service error) 200 一切正常(ok) 304 沒有被修改(not modified)(服務器返回304狀態,表示源文件沒有被修改 )

瀏覽器與服務器建立連接 xhr.open(method, url, asynch); * 與服務器建立連接使用 * method:請求類型,類似 “GET”或”POST”的字符串。 * url:路徑字符串,指向你所請求的服務器上的那個文件。請求路徑 * asynch:表示請求是否要異步傳輸,默認值為true(異步)。

簡單的小程序 是以 post請求來發送的消息:

functiondd(){//創建對象

varxhr= newXMLHttpRequest();//設置請求行,創建新的http請求

xhr.open("post","/dd/d");//設置請求頭

xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");//設置請求主體,發送請求信息給服務器

xhr.send("a=6&b=9");//接受服務器響應

xhr.onreadystatechange= function(){if(xhr.readyState==4){if(xhr.status==200) {

alert(xhr.responseText);

}

}

}

}

下面是java程序

packagedd;importjava.io.IOException;importjava.io.PrintWriter;importjavax.servlet.ServletException;importjavax.servlet.http.HttpServlet;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.annotation.WebServlet;/*by:wzq

time:2017年11月16日*/@WebServlet(name= "d", urlPatterns = { "/d"})public class Dd extendsHttpServlet {private static final long serialVersionUID = 1L;protected voiddoGet(HttpServletRequest request, HttpServletResponse response)throwsServletException, IOException {

String parameter= request.getParameter("a");

System.out.println(parameter);

PrintWriter writer=response.getWriter();

writer.print("dsdsdsdsdsdsdsd");

writer.flush();

}protected voiddoPost(HttpServletRequest request, HttpServletResponse response)throwsServletException, IOException {this.doGet(request, response);

}

}

下面是get請求方法是的ajax代碼。

functiondd(){//創建對象

varxhr= newXMLHttpRequest();//設置請求行,創建新的http請求

xhr.open("GET","/dd/d?a=6666",true);

xhr.setRequestHeader("Content-type","application/json; charset=utf-8");//設置請求主體,發送請求信息給服務器

xhr.send();//接受服務器響應

xhr.onreadystatechange= function(){if(xhr.readyState==4){if(xhr.status==200) {

alert(xhr.responseText);

}

}

}

}

總結

以上是生活随笔為你收集整理的java原生的ajax怎么写_原生Ajax代码实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。