📜  xmlhttprequest 响应 - Javascript (1)

📅  最后修改于: 2023-12-03 14:48:38.780000             🧑  作者: Mango

XMLHttpRequest响应 - JavaScript

在Web开发中,XMLHttpRequest是一个常用的对象,用于与Web服务器进行数据交互。在发送请求后,要能够处理服务器的响应。

处理响应

在接收到服务器响应后,我们可以使用XMLHttpRequest对象的以下属性和方法来处理响应:

  1. responseText - 返回响应内容的字符串形式。
  2. responseXML - 返回响应内容的XML DOM对象形式。
  3. status - 返回响应的状态码。
  4. statusText - 返回对状态码的简短描述。
  5. getAllResponseHeaders() - 返回所有响应头的字符串形式。
  6. getResponseHeader(header) - 返回指定响应头名称的字符串形式。

以下是一个简单的示例:

let xhr = new XMLHttpRequest();     
xhr.onload = function () {
  if (xhr.status >= 200 && xhr.status < 300) {
    console.log(xhr.responseText); // 输出响应内容
  } else {
    console.log('请求失败');
  }
}; 
xhr.open('GET', 'https://example.com/api/data');     
xhr.send();
处理错误响应

如果服务器返回错误状态码,我们可以通过XMLHttpRequest对象的onerror事件来处理错误响应:

let xhr = new XMLHttpRequest();
xhr.onerror = function () {
  console.log('请求失败');
};
xhr.open('GET', 'https://example.com/api/data');
xhr.send();
解决跨域问题

如果请求的URL与当前页面的域不同,那么就会发生跨域问题。在这种情况下,我们需要使用CORS(跨域资源共享)来解决跨域问题。

以下是一个示例:

let xhr = new XMLHttpRequest();
xhr.open('GET', 'https://otherdomain.com/data');
xhr.withCredentials = true;
xhr.send();

需要注意的是,服务器端也需要进行相应的CORS设置。

总结

通过XMLHttpRequest对象来处理响应可以让我们方便地与服务器进行数据交互。使用上述方法和属性,我们可以轻松地获取服务器响应并处理错误响应。