(function(window){
function AjaxTool(){
}
AjaxTool.ajaxRequest = function(param,successFunc,failFunc){
var requestType = param['requestType'];
var url = param['url'];
var paramObj = param['paramObj'];
var timeout = param['timeout'];
//創(chuàng)建一個請求
var xhr;
if(requestType.toLowerCase() === 'get'){
//拿到本地需要傳送的數(shù)據(jù)
var codeURL = encodeURI(url + '?' + getStrWithObject(paramObj));
xhr.open('get',codeURL,true);
//發(fā)送請求(撥出電話)
xhr.send();
}else if(requestType === 'post'){
//拿到本地需要傳送的數(shù)據(jù)
var codeParam = encodeURI(getStrWithObject(paramObj));
xhr.open('post',url,true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send(codeParam);
}
//監(jiān)聽服務(wù)器響應(yīng)(等待電話響起)
xhr.onreadystatechange = function(){
//一旦服務(wù)器響應(yīng)就會執(zhí)行這個函數(shù)
//處理響應(yīng)數(shù)據(jù)
if(xhr.readyState == 4){
//意味服務(wù)器有響應(yīng)挣郭,但是不代表響應(yīng)正確
//判斷服務(wù)器給的數(shù)據(jù)是否正確
var status = xhr.status;
if(status >= 200 && status <=300 || status ==304){
//真正處理數(shù)據(jù)的操作在這里執(zhí)行
successFunc(xhr);
//額外的清除取消請求的定時
clearTimeout(timer);
} else{
failedFunc();
}
}
}
//等到多少秒之后取消 ajax 請求
var timer;
if(timeout > 0){
timer = setTimeout(function(){
xhr.abort();
},timeout)
}
}
window.AjaxTool = AjaxTool;
function getRandomStr(){
return Math.random() + (new Date()).getTime();
}
function getStrWithObject(paramObj){
var resultArray = [];
for(var key in paramObj){
var str = key + '=' + paramObj[key];
resultArray.push(str);
}
resultArray.push('random=' + getRandomStr());
return resultArray.join('&');
}
})(window)
ajax 請求數(shù)據(jù)函數(shù)封裝
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來借笙,“玉大人较锡,你說我怎么就攤上這事÷煸蹋” “怎么了俯邓?”我有些...
- 文/不壞的土叔 我叫張陵熔号,是天一觀的道長。 經(jīng)常有香客問我引镊,道長,這世上最難降的妖魔是什么梦重? 我笑而不...
- 正文 為了忘掉前任亮瓷,我火速辦了婚禮,結(jié)果婚禮上嘱支,老公的妹妹穿的比我還像新娘。我一直安慰自己沛膳,他們只是感情好,可當(dāng)我...
- 文/花漫 我一把揭開白布锹安。 她就那樣靜靜地躺著倚舀,像睡著了一般。 火紅的嫁衣襯著肌膚如雪风罩。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼竿报,長吁一口氣:“原來是場噩夢啊……” “哼继谚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起花履,我...
- 正文 年R本政府宣布,位于F島的核電站鲤看,受9級特大地震影響耍群,放射性物質(zhì)發(fā)生泄漏义桂。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一袖裕、第九天 我趴在偏房一處隱蔽的房頂上張望溉瓶。 院中可真熱鬧,春花似錦堰酿、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽顺饮。三九已至凌那,卻和暖如春兼雄,著一層夾襖步出監(jiān)牢的瞬間帽蝶,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- //封裝JSONP function creatScriptTag(scrSring){ var script =...
- 由于ajax的異步問題许赃,全局變量bookData輸出的時候不一定已經(jīng)執(zhí)行完成ajax,所以存在獲取不到請求數(shù)據(jù)的情...
- 使用第三方類庫FMDB封裝數(shù)據(jù)請求類鳖粟,實現(xiàn)數(shù)據(jù)分頁請求,上拉刷新下拉加載#### 實現(xiàn)功能:添加問題和答案向图,刪除問...
- 一直在用jQuery方法來寫ajax請求,用的多了嗜傅,不免對這其中是怎么實現(xiàn)的產(chǎn)生了興趣檩赢,于是乎吕嘀,小弟閑來無聊研究了...
- 在發(fā)送ajax請求的時候贞瞒,為了保證每次的都與服務(wù)器交互,就要傳遞一個參數(shù)每次都不一樣军浆,這里就用了時間戳 大家在系統(tǒng)...