gpt4 book ai didi

javascript - 为什么 XMLHttpRequest 响应的长度与请求文件的大小不同?

转载 作者:行者123 更新时间:2023-12-01 16:08:40 26 4
gpt4 key购买 nike

如果文件的实际大小为 6327 字节(响应头中的内容长度为 6327),

那么为什么 XMLHttpRequest 响应的长度(下面代码中 xhr.response.length 的值)不同:

Chrome(版本 41)中的 6085 和 Firefox(版本 36)中的 5961?

//run this code somewhere on google.com to avoid access error
var xhr = new XMLHttpRequest();
xhr.open('GET','https://www.google.com/images/errors/robot.png',true);
xhr.onreadystatechange=function(e){
if(xhr.readyState==4&&xhr.status==200){
console.log(xhr.response.length);
}
};
xhr.send();

命令
xhr.setRequestHeader('Content-Type','image/png');

或命令
xhr.setRequestHeader('Content-Type','application/zip');

没有帮助。

最佳答案

MIME 类型必须被覆盖:

var xhr = new XMLHttpRequest();
xhr.open('GET','https://www.google.com/images/errors/robot.png',true);
xhr.overrideMimeType('text/plain; charset=x-user-defined');
xhr.onreadystatechange=function(e){
if(xhr.readyState==4&&xhr.status==200){
console.log(xhr.response.length);
}
};
xhr.send();

实际上,它不是问题的最佳答案,但可以正常工作(xhr.response.length 的值等于文件大小)。

关于javascript - 为什么 XMLHttpRequest 响应的长度与请求文件的大小不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29101325/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com