原生js封装异步ajax请求
时间: 2023-10-09 08:07:10 浏览: 102
当封装异步Ajax请求时,可以使用原生JavaScript的XMLHttpRequest对象来实现。下面是一个简单的示例:
```javascript
function ajaxRequest(method, url, data, successCallback, errorCallback) {
var xhr = new XMLHttpRequest();
xhr.open(method, url, true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onload = function() {
if (xhr.status === 200) {
successCallback(xhr.responseText);
} else {
errorCallback(xhr.statusText);
}
};
xhr.onerror = function() {
errorCallback(xhr.statusText);
};
xhr.send(JSON.stringify(data));
}
```
上述代码中,`ajaxRequest`函数接受五个参数:
- `method`:请求方法,可以是GET、POST等。
- `url`:请求的URL地址。
- `data`:要发送的数据,作为请求的主体内容。
- `successCallback`:请求成功时的回调函数。
- `errorCallback`:请求失败时的回调函数。
使用示例:
```javascript
ajaxRequest('GET', 'https://api.example.com/data', null, function(response) {
console.log('请求成功:', response);
}, function(error) {
console.error('请求失败:', error);
});
```
以上代码演示了一个GET请求的例子,你可以根据需要进行修改和扩展,例如支持其他请求方法、处理响应数据等。
阅读全文