XHR 请求学习笔记
什么是XHR请求?
XHR代表XMLHttpRequest。它是一种在后台与服务器交换数据的技术,可以加载新数据而不必刷新整个页面。
如何使用XHR进行网络请求?
创建XHR对象
我们需要使用一个XHR对象来发起网络请求。创建XHR对象的代码如下所示:
javascriptCopy Codeconst xhr = new XMLHttpRequest();
发送网络请求
要发送网络请求,我们需要调用xhr.open()函数并传递request method、URL和一个布尔值(表明是否异步执行请求)作为参数。然后我们需要调用xhr.send()函数将请求发送到服务器。请求发送后,我们可以使用onload函数来处理服务器响应。
javascriptCopy Codexhr.open('GET', 'https://api.example.com/data.json', true);
xhr.send();
xhr.onload = function() {
if (xhr.status === 200) {
console.log(xhr.responseText);
} else {
console.log('网络请求出错');
}
};
在上述代码中,我们使用GET方法获取名为"data.json"的JSON数据。一旦服务器响应成功,我们就会看到控制台输出返回的数据。
处理异步网络请求
默认情况下,XHR是异步执行的。如果我们需要修改这个行为,我们可以将第三个参数改为false来同步执行请求。但这不是推荐的方式,因为它会使代码停滞,直到服务器响应为止。
XHR实例
我们可以通过下面的示例代码来深入了解XHR是如何工作的:
javascriptCopy Codeconst xhr = new XMLHttpRequest();
xhr.open('GET', 'https://api.example.com/data.json', true);
xhr.send();
xhr.onload = function() {
if (xhr.status === 200) {
const data = JSON.parse(xhr.responseText);
console.log(data);
} else {
console.log('网络请求出错');
}
};
以上代码使用了一个名为"data.json"的JSON数据文件。一旦服务器响应成功,它就会将数据传递给onload函数进行处理。如果发生错误,我们就会看到控制台输出“网络请求出错”。
总结
XHR是与服务器交换数据的一种技术。
要发送XHR请求,请通过调用xhr.open()来设置请求方法、URL和请求方式,并通过xhr.send()发送请求。
一旦收到服务器响应,请使用onload()函数进行处理。