Asynchronous JavaScript and XML
创建XMLHttpRequest对象的语法:
var xhr = new XMLHttpRequest();
老版本的Internet Explorer 使用ActiveX对象:
var xhr = new ActiveXObject("Microsoft.XMLHTTP");
为了应对所有的现代浏览器,包括 IE5 和 IE6(现在应该很少人使用了),请检查浏览器是否支持 XMLHttpRequest 对象。如果支持,则创建 XMLHttpRequest 对象。如果不支持,则创建 ActiveXObject :
var xmlhttp;
if (window.XMLHttpRequest) {
// IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
xmlhttp=new XMLHttpRequest();
} else {
// IE6, IE5 浏览器执行代码
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
示例
// 创建 XMLHttpRequest 对象
var xhr = new XMLHttpRequest();
// 配置请求
xhr.open('GET', '<https://api.example.com/data>', true);
// 设置请求头(如果需要的话)
// xhr.setRequestHeader('Content-Type', 'application/json');
// 定义回调函数
xhr.onload = function () {
if (xhr.status >= 200 && xhr.status < 300) {
// 请求成功,处理响应
console.log('Response:', xhr.responseText);
} else {
// 处理错误
console.error('Error:', xhr.statusText);
}
};
// 处理网络错误
xhr.onerror = function () {
console.error('Request failed');
};
// 发送请求
xhr.send();