Files
2024-09-27 02:06:13 +08:00

66 lines
1.3 KiB
JavaScript

class Ajax {
//请求方式不一样
//请求参数不一样
//请求地址不一样
constructor() {
this.ajax = new XMLHttpRequest()
}
get(params) {
var str = ""
for (const key in params.data) {
str += `&${key}=${params.data[key]}`
}
str = str.replace("&", "?")
this.ajax.open("GET", params.url + str)
this.ajax.send();
this.statechange(params)
}
post() {
this.open("POST", "http://127.0.0.1/index.php")
}
statechange (params) {
this.ajax.onreadystatechange = () => {
if (this.ajax.readyState == 4) {
if (this.ajax.status == 200) {
var data = JSON.parse(this.ajax.responseText)
switch (data.status) {
case 200:
params.success(data.result)
break;
case 404:
alert(data.msg)
throw new Error(data.msg)
break;
}
//
} else {
params.error(this.ajax)
}
}
}
}
}
var ajax = new Ajax()