Ajax如何处理响应头

64次阅读
没有评论

在 Ajax 中,可以通过 XMLHttpRequest 对象的 getResponseHeader() 方法和 getAllResponseHeaders() 方法来获取响应头信息。

getResponseHeader(headerName) 方法可以返回指定的响应头信息,例如:

var xhr = new XMLHttpRequest();
xhr.open("GET", "example.php");
xhr.send();
xhr.onreadystatechange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
        var contentType = xhr.getResponseHeader("Content-Type");
        console.log("Content-Type: " + contentType);
    }
}

在这个例子中,使用 getResponseHeader() 方法获取响应头中的 Content-Type 信息,并输出到控制台中。

getAllResponseHeaders() 方法可以返回所有的响应头信息,以字符串形式表示,例如:

var xhr = new XMLHttpRequest();
xhr.open("GET", "example.php");
xhr.send();
xhr.onreadystatechange = function() {
    if (xhr.readyState == 4 && xhr.status == 200) {
        var headers = xhr.getAllResponseHeaders();
        console.log(headers);
    }
}

在这个例子中,使用 getAllResponseHeaders() 方法获取所有的响应头信息,并输出到控制台中。

使用 jQuery 发送 Ajax 请求时,可以在 success 回调函数中访问响应头信息。例如:

$.ajax({
    url: "example.php",
    success: function(response, status, xhr) {
        var contentType = xhr.getResponseHeader("Content-Type");
        console.log("Content-Type: " + contentType);
    }
});

在这个例子中,通过 xhr 参数访问响应头信息,获取 Content-Type 信息并输出到控制台中。

正文完
 
评论(没有评论)