ajax請求返回xml資料(含服務端程式碼)
ajax技術目前已經被jquery包裝的比較完美,但自己使用的地方仍然很多,所以需要自己能夠自定義ajax方法。
以下是從前端ajax發出請求,後臺響應返回xml資料,ajax接收並處理的完整過程,例項簡單易懂,可以根據實際情況進行修改。
後臺程式碼為Java。
jsp頁面
<script>
//定義ajax引擎
var myXmlHttpRequest="";
//獲取ajax引擎函式
function getXmlHttpObject(){
var xmlHttpRequest;
//不同的瀏覽器獲取物件xmlhttprequest 物件方法不一樣
if(window.ActiveXObject){
xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP");
}else{
xmlHttpRequest=new XMLHttpRequest();
}
return xmlHttpRequest;
}
主函式
function getTqByAjax(){
myXmlHttpRequest=getXmlHttpObject();
//判斷建立ok
if(myXmlHttpRequest){
//通過myXmlHttpRequest物件傳送請求到伺服器的某個頁面
var url="<c:url value='/preInfo.tq?method=getTqByAjax'/>";
//這個是要傳送的資料
var data="";//我這裡為空
//開啟請求.
myXmlHttpRequest.open("post",url,true);
//還有一句話,這句話不能少.
myXmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//指定回撥函式.chuli是函式名
myXmlHttpRequest.onreadystatechange=chuli;
//真的傳送請求,如果是get請求則填入 null即可
//如果是post請求,則填入實際的資料
myXmlHttpRequest.send(data);
}
}
//回撥函式,接收資料並處理
function chuli()[
//window.alert("處理函式被調回"+myXmlHttpRequest.readyState);
if(myXmlHttpRequest.readyState==4){
var xmlDoc=myXmlHttpRequest.responseXML;
//取出mes節點值
var mes=xmlDoc.getElementsByTagName("mes");
//window.alert(mes.length);
//mes[0]->表示取出第一個mes節點
//mes[0].childNodes[0]->表示第一個mes節點的第一個子節點
window.alert(mes[0].childNodes[0].nodeValue);
//這裡寫你的程式碼
//………………
}
}
</script>
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Java後臺
@RequestMapping(params = "method=getTqByAjax")
public void getTqByAjax (HttpServletRequest request,
HttpServletResponse response){
PrintWriter out = null;
try {
out = response.getWriter();
response.setContentType("text/xml");//告訴瀏覽器返回的xml型別
response.setHeader("Cache-Control", "no-cache");//告訴瀏覽器不要快取資料
StringBuffer buf = new StringBuffer();
buf.append("<?xml version=\"1.0\" encoding=\"GBK\"?>");
buf.append("<res><mes>success</mes></res>");
out.println(buf);
out.flush();
} catch (Exception e) {
// TODO: handle exception
}finally{
out.close();//關閉流
}
}
相關推薦
ajax請求返回xml資料(含服務端程式碼)
ajax技術目前已經被jquery包裝的比較完美,但自己使用的地方仍然很多,所以需要自己能夠自定義ajax方法。 以下是從前端ajax發出請求,後臺響應返回xml資料,ajax接收並處理的完整過程,例
使用 servlet 響應ajax請求,返回 json 資料
前提:會寫一個 servlet ,參考文章 寫一個 servlet 的方法 1.匯入物件轉 json 的jar 包 我這裡使用的時maven 導包 <dependency> <groupId>com.fasterxml.jackson.core&
關於ajax請求返回json資料不進入回撥函式的可能情況
最近做一個專案,一般都是用json資料先模擬後端返回資料,結果昨天正常傳送一個get請求後,json資料請求正常,但是一直都沒法進入success回撥執行後續方法,搗鼓了很久,才發現get請求返回的json資料格式有問題,由於是自己模擬json資料,粗心導致少了一個標點符號
list集合轉換成json資料,ajax請求返回json資料,再通過迴圈顯示出來
之前在網上查了很多關於迴圈顯示ajax返回值的方法,很多都不對的,顯示不了我要的結果。後來自己鼓搗出來了,發出來分享一下自己的成果。因為ajax不能返回集合的,需要把集合list轉換成json返回,再用迴圈的方式,顯示出結果。 操作層 //編碼方式request.set
vue-cli專案如何使用vue-resource獲取本地的json資料(模擬服務端返回資料)
最近使用vue-cli做了一個小小的專案,在專案中需要使用vue-resource來與後臺進行資料互動,所以我使用了本地json資料來模仿後臺獲取資料的流程。至於vue-resource的安裝和json的準備我就不贅述了、、、 下面是操作方法: 1、首先介紹
java socket網路程式設計例項程式碼(含服務端和客戶端)
本程式碼為java socket網路程式設計例項程式碼,包括客戶端和服務端,實現客戶端傳送訊息,服務端接收並反饋訊息。 server.java為服務端程式碼。 client.java為客戶端程式碼。 服務端程式碼server.java: package socket;
CANOpen系列教程06_結合程式碼理解CAN底層收發資料(含STM32例程)
該系列教程已經在我的個人微信公眾號**「strongerHuang」**整理並分享。因在這裡分享文章,還需單獨整理一遍,時間有限,就不再一一重複整理出來了。 想要檢視更多相關教程,可以關注我的個人微信公眾號「strongerHuang」,回覆【CANOpen系
在瀏覽器進行大檔案分片上傳(java服務端實現)
最近在做web網盤的系統,網盤最基本的功能便是檔案上傳,但是檔案上傳當遇到大檔案的時候,在web端按傳統方式上傳簡直是災難,所以大檔案上傳可以採用分片上傳的辦法。其主要思路是:1.大檔案上傳時進行分片;2.分片上傳;3.對分片檔案進行合併。 思路比較清晰簡單,但一些問題在於:1.大檔案如何進
Python分散式爬蟲打造搜尋引擎網站(含課件&程式碼)
未來是什麼時代?是資料時代!資料分析服務、網際網路金融,資料建模、自然語言處理、醫療病例分析……越來越多的工作會基於資料來做,而爬蟲正是快速獲取資料最重要的方式,相比其它語言,Python爬蟲更簡單、高效 ----------------------課程目錄--
【Java】《Java程式設計思想》筆記(含練習題答案程式碼)-第二章 一切都是物件
2.1 用引用操縱物件【String】 遙控器(引用)- 電視機(資料)建立String引用,如果向無物件的引用傳送資訊會返回一個執行時錯誤,所以安全的做法是:建立一個引用的同時便進行初始化Stri
[C++]排序模板(含C++模板程式碼)
排序模板 一、插入排序 特點:stable sort、In-place sort 最優複雜度:當輸入陣列就是排好序的時候,複雜度為O(n),而快速排序在這種情況下會產生O(n^2)的複雜度。 最差複雜度:當輸入陣列為倒序時,複雜度為O(n^2) 插入排
百度雲訊息推送(Java服務端開發)
註冊成為百度開發者 建立/配置應用(有Android 和 iOS 平臺) 1)獲取 ApiKey/SecretKey ApiKey是應用標識,在SDK呼叫過程中唯一標識一個應用 SecretKey是呼叫API時的Token,用來驗證請求的合法性,請注意保
自己寫 localtime 函式(含完整註釋,程式碼)
自己寫 localtime 函式(含完整註釋,程式碼) //對時間轉換有興趣的可以看看。//曾在某平臺下多執行緒中使用localtime庫函式。可惡的是,每當程式執行//一段時間後,都要出現記憶體洩露。查了數個夜晚為什麼,無從斷定。//只能狠狠心,自己寫了個localtime
如何讓C#編譯不安全程式碼(含unsafe的程式碼)
背景:有關鍵字unsafe,其程式碼在vs編譯環境中會報錯。報錯資訊:“不安全程式碼只會在使用/unsafe編譯的情況下出現” 解決方案: 1、vs選單“專案”中找到“(解決方案名稱)屬性”項,單擊進入專案屬性設定介面; 2、在專案屬性介面中找到“生成”選項卡 3、在“生成
微信小程式-微信支付詳細介紹(Thinkphp後端程式碼)
流程 如微信支付的文件,不再多說 https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_4&index=3 一一分析一下每一步我們具體要做什麼: 1、小程式內呼叫登入介面,獲取到使用者的o
微信小程式上傳圖片功能(附後端程式碼)
幾乎每個程式都需要用到圖片,在小程式中我們可以通過image元件顯示圖片。 當然小程式也是可以上傳圖片的,微信小程式文件也寫的很清楚。 上傳圖片 首先選擇圖片 通過wx.chooseImage(OBJECT)實現 官方示例程式碼 ? 1 2
Ajax幾個簡單的案例(ajax_使用者唯一驗證、ajax_返回xml資料的處理(包括分頁處理)
Ajax幾個簡單的案例(ajax_使用者唯一驗證、ajax_返回xml資料的處理(包括分頁處理) 當然開發的前提是把相應的包匯入專案中(開發環境myeclipse) ajax_使用者唯一驗證(servlet): 如圖在myeclipse中的ajax_servlet專案中的index.jsp實現頁面的顯
使用jQuery傳送POST,Ajax請求返回JSON格式資料
問題:使用jQuery POST提交資料到PHP檔案, PHP返回的json_encode後的陣列資料,但jQuery接收到的資料不能解析為JSON物件,而是字串{"code":-1,"msg":"12
Java 通過httpClient Post方式提交xml,並從服務端返回資料
在通過http請求連線服務端程式時,有兩種方式httpClient這個不是標準的java庫,但是是開源專案,能夠快捷的開發,但如果做Android的開發,推薦使用httpUrlConnect這個工具。但是httpClient確實也是一個比較好用的工具。 這裡面
ajax post請求返回json資料後,頁面不需要重新整理的問題解決如例
<form> <input name="a" type="text" /> <input name="b" type="text" /> <input id="sub" type="button" value="提交" class