yqb
Version:
Static Package Manager
69 lines (61 loc) • 2.56 kB
JavaScript
/*
* ajax
* author: <%= author %>
* version: <%= version %>
* website: http://www.431103.com
*/
class Ajax {
constructor(url, data = {}, resolve, reject, method = 'post') {
if (url) this.ajax(url, data, resolve, reject, method);
}
ajax(url, data = {}, resolve, reject, method = 'post') {
let request = new XMLHttpRequest();
if (!request) {
throw new Error('XMLHttpRequest');
}
request.onreadystatechange = function() {
if (request.readyState === 4) {
if (request.status === 200) {
resolve.call(this, JSON.parse(request.responseText));
} else if (request.status >= 400) {
let data = {
resultCode: '9999',
resultMsg: '网络异常,请稍后再试。'
};
reject.call(this, data);
}
}
}
request.open(method, url, true);
request.withCredentials = true;
request.setRequestHeader('Content-Type', 'application/json');
request.send(JSON.stringify(data));
}
requestServiceMTP(url, data, resolve, reject) {
this.ajax(this.getMTPURL() + url, data, data => {
if (data.resultCode == '1000') {
if (resolve) resolve.call(this, data, data.resultCode, data.resultMsg);
} else {
if (reject) reject.call(this, data, data.resultCode, data.resultMsg);
}
}, data => {
if (reject) reject.call(this, data, data.resultCode, data.resultMsg);
});
}
getMTPURL() {
var tag = {
// pro
"d.1qianbao.com": "https://mobile.1qianbao.com",
"ms.1qianbao.com": "https://mobile.1qianbao.com",
"ms2.1qianbao.com": "https://mobile.1qianbao.com",
"p1.jkimg.net": "https://mobile.1qianbao.com",
"d-uat.1qianbao.com": "https://mobile-uat.1qianbao.com",
"test-d2.stg.1qianbao.com": "https://test-ms.stg.1qianbao.com:8443",
"test2-d2.stg.1qianbao.com": "https://test2-ms.stg.1qianbao.com:6443",
"test3-d2.stg.1qianbao.com": "https://test3-mobile.stg.1qianbao.com:8449",
"test5-d2.stg.1qianbao.com": "https://test-ms.stg.1qianbao.com:11380",
"127.0.0.1:20000": "https://test-ms.stg.1qianbao.com:11380"
};
return tag[window.location.host];
}
}