XMLHttpRequest 获取响应头
时间: 2023-11-22 10:46:41 浏览: 81
XMLHttpRequest对象的getResponseHeader()方法可以用来获取响应头信息。该方法需要传入一个参数,即要获取的响应头的名称,返回该响应头的值。如果该响应头不存在,则返回null。
例如,以下代码可以获取名为"Content-Type"的响应头的值:
```javascript
var xhr = new XMLHttpRequest();
xhr.open('GET', 'example.com');
xhr.send();
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
var contentType = xhr.getResponseHeader('Content-Type');
console.log(contentType);
}
};
```
相关问题
xmlhttprequest 请求响应400没法获取
当XMLHttpRequest对象的请求响应状态码为400时,表示请求参数有误或者服务器无法理解请求。在这种情况下,可以通过XMLHttpRequest对象的onreadystatechange事件来监听请求的状态变化,并通过XMLHttpRequest对象的responseText属性来获取服务器返回的错误信息。
以下是一个获取400请求响应错误信息的示例代码:
```javascript
const xhr = new XMLHttpRequest();
xhr.open('GET', 'http://example.com/api');
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
// 请求成功
console.log(xhr.responseText);
} else {
// 请求失败
console.error(xhr.statusText);
}
}
};
xhr.send();
```
需要注意的是,如果服务器返回的响应数据是JSON格式,可以通过JSON.parse()方法将其转换为JavaScript对象,方便进行错误信息的处理。
js 怎么获取响应头的cookie
你可以使用 JavaScript 中的 `XMLHttpRequest` 对象来发送请求并获取响应头的 cookie。下面是一个简单的示例代码:
```javascript
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://example.com', true);
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
var cookies = xhr.getResponseHeader('Set-Cookie');
console.log(cookies);
} else {
console.log('请求失败');
}
}
};
xhr.send();
```
在上面的代码中,我们使用 `XMLHttpRequest` 对象发送了一个 GET 请求,并在 `onreadystatechange` 回调函数中处理响应。通过调用 `getResponseHeader('Set-Cookie')` 方法,你可以获取到响应头中的 cookie 信息。请注意,这个方法会返回所有的 cookie 值,你可能需要进行进一步的处理。
当然,现代的浏览器也提供了更简洁的方式来发送 HTTP 请求和处理响应,比如使用 `fetch` API 或者使用第三方库如 Axios。这些方法可以更方便地获取响应头的 cookie 信息,你可以根据具体需求选择合适的方式。