/**
* 向伺服器傳送GET請求。
*
* @param {type} url
* @param {type} async 是否非同步呼叫
* @param {type} fnCallback 回撥函式
* @returns {undefined} 如果是非同步呼叫,透過fnCallback函式回撥;如果是同步呼叫,直接返回請求結果。
*/
function request(url, async, fnCallback) {
var http;
if (window.XMLHttpRequest) {
http = new XMLHttpRequest();
} else if (window.ActiveXObject) {
http = new ActiveXObject("Microsoft.XMLHTTP");
} else return;
if (async) {
if (fnCallback) {
http.onreadystatechange = function () {
if (http.readyState == 4 && http.status == 200) {
fnCallback(http.responseText);
}
}
}
http.open("GET", url, true);
http.send();
} else {
http.open("GET", url, false);
http.send();
if (fnCallback) {
fnCallback(http.responseText);
}
return http.responseText;
}
}
/**
* 向跨域伺服器請求指定的URL。
* 透過QueryString中必須包含名為callback的引數,該引數的值是回撥函式的名稱。
*
* @param {type} url
* @returns {undefined} 透過QueryString中的callback引數指定的回撥函式進行處理。
*/
function jsonp(url) {
var b = document.getElementsByTagName("head")[0];
var a = document.createElement("script");
a.type = "text/javascript";
a.src = url;
b.appendChild(a);
}
簡單封裝get和jsonp
相關文章
- jsonp promise 封裝JSONPromise封裝
- jsonp 封裝思想JSON封裝
- 簡單問題,封裝和框架!封裝框架
- jsonp跨域封裝JSON跨域封裝
- jsonp的promise封裝JSONPromise封裝
- JSONP 通用函式封裝JSON函式封裝
- Retrofit的簡單封裝封裝
- IQueryable的簡單封裝封裝
- ProgressFragment的簡單封裝Fragment封裝
- Fetch API 簡單封裝API封裝
- 二維碼簡單封裝封裝
- BaseActivity與BaseFragment的簡單封裝Fragment封裝
- 5-AVI–Fragment簡單封裝Fragment封裝
- 一個簡單的 Amqp 封裝MQ封裝
- iOS 基於FMDB簡單封裝iOS封裝
- 對getElementsByTagName()方法簡單封裝封裝
- 一個簡單vue.config.js配置和axios簡單封裝VueJSiOS封裝
- Golang 對MongoDB的操作簡單封裝GolangMongoDB封裝
- JS棧結構的簡單封裝JS封裝
- 陣列常用方法的簡單封裝陣列封裝
- Flutter Dio http簡單封裝與使用FlutterHTTP封裝
- AndroidBroadcast做的簡單封裝:AndroidAST封裝
- 一個封裝簡單使用簡單的雷達檢視封裝
- curl 簡單post get
- go對get、post請求封裝Go封裝
- 小程式wx.request()方法簡單封裝封裝
- 封裝一個簡單的日曆元件封裝元件
- 封裝一個簡單的動畫函式封裝動畫函式
- 簡單封裝分頁功能pageView.js封裝ViewJS
- javascript物件導向封裝簡單介紹JavaScript物件封裝
- c# Quartz.net的簡單封裝C#quartz封裝
- 一個最簡單的類JQuery封裝jQuery封裝
- LinkedList重寫(5)LinkedList簡單的封裝和增加泛型封裝泛型
- 微信小程式wx.request的簡單封裝微信小程式封裝
- javascript物件導向的封裝簡單介紹JavaScript物件封裝
- Kotlin中Retrofit與RxJava的簡單封裝KotlinRxJava封裝
- SqlSugar 多資料來源的簡單封裝SqlSugar封裝
- Flutter 封裝:富文字 RichText 極簡封裝Flutter封裝