ajax封装:get封装方式、post封装方式
在JavaScript中,可以使用原生的XMLHttpRequest
对象或者现代的fetch
API来实现AJAX的封装。以下是使用这两种方式封装GET和POST请求的示例代码。
使用XMLHttpRequest
封装GET和POST
function getRequest(url, callback) {
const xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
callback(xhr.responseText);
}
};
xhr.send();
}
function postRequest(url, data, callback) {
const xhr = new XMLHttpRequest();
xhr.open('POST', url, true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
callback(xhr.responseText);
}
};
xhr.send(data);
}
使用fetch
API封装GET和POST
function getRequest(url) {
return fetch(url).then(response => response.text());
}
function postRequest(url, data) {
return fetch(url, {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: data
}).then(response => response.text());
}
在这两个例子中,我们定义了getRequest
和postRequest
函数来封装GET和POST请求。这些函数接收URL和需要发送的数据作为参数,并返回一个Promise,该Promise在请求完成时解析为响应数据。
评论已关闭