📅  最后修改于: 2023-12-03 15:13:17.593000             🧑  作者: Mango
在前端开发中,Ajax 技术是非常重要的一部分,它可以实现无需刷新页面的异步数据请求和响应。在 Ajax 中,类型和方法是两个非常重要的概念,它们决定了 Ajax 请求的方式和效果。
Ajax 中有两种类型:GET 和 POST。
GET 是 Ajax 中最常用的类型之一。它将请求数据通过 URL 传输到服务器。我们可以通过把参数拼接在 URL 后面的方式来传递数据。
下面是一个 GET 请求的示例:
function getData() {
var xhr = new XMLHttpRequest();
xhr.open('GET', '/getData?id=1', true);
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
console.log(xhr.responseText); // 返回的数据
}
};
xhr.send();
}
POST 是另一个常见的类型。它将请求数据放在请求主体中,而不是放在 URL 后面。
下面是一个 POST 请求的示例:
function postData() {
var xhr = new XMLHttpRequest();
xhr.open('POST', '/postData', true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=UTF-8');
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
console.log(xhr.responseText); // 返回的数据
}
};
xhr.send('id=1&name=test');
}
Ajax 中还有一些方法,它们是用来处理 Ajax 请求的。下面是一些常见的方法:
open() 方法用于初始化一个请求。它有三个参数:请求类型、URL 和是否异步处理。
setRequestHeader() 方法用于设置请求头信息。我们可以通过它来设置 Content-Type、User-Agent、Authorization 和 Accept 等信息。
send() 方法用于发送请求。如果是 GET 请求,我们不需要传递任何参数。如果是 POST 请求,我们需要通过 send() 方法来传递参数。
onreadystatechange() 方法用于指定一个回调函数,在 Ajax 请求的状态发生变化时执行。我们可以在这个回调函数中对返回的数据进行处理。
总的来说,Ajax 中的类型和方法是开发中必须掌握的内容。掌握了这些知识之后,我们才能更好地使用 Ajax 技术,完成页面数据的异步请求和响应。