Promise 封装 ajax
// Promise 封装 ajax
function fetch(method, url, data){
return new Promise((resolve, reject) => {
var xhr = new XMLHttpRequest();
var method = method || "GET";
var data = data || null;
xhr.open(method, url, true);
xhr.onreadystatechange = function() {
if(xhr.status === 200 && xhr.readyState === 4){
resolve(xhr.responseText);
} else {
reject(xhr.responseText);
}
}
xhr.send(data);
})
}
// 使用
fetch("GET", "/some/url.json", null)
.then(result => {
console.log(result);
})
// 封装 nodejs error first 风格回调
function readFile(url) {
return new Promise((resolve, reject) => {
fs.readFile(url,'utf8', (err, data) => {
if(err) {
reject(err);
return;
}
resolve(data)
})
})
}
fetch
const http = new EasyHttp;
// get请求数据
http.get("http://jsonplaceholder.typicode.com/users")
.then((data) => {
console.log(data);
})
.catch(err => console.log(err))
// 传输数据
// const data = {
// name:"Henry",
// username:"米斯特吴",
// email:"27732357@qq.com"
// };
// post user
// http.post("http://jsonplaceholder.typicode.com/users",data)
// .then(data => console.log(data))
// .catch(err => console.log(err));
// update user
// http.put("http://jsonplaceholder.typicode.com/users/2",data)
// .then(data => console.log(data))
// .catch(err => console.log(err));
// delete user
// http.delete('http://jsonplaceholder.typicode.com/users/2')
// .then(data => console.log(data))
// .catch(err => console.log(err));