AJAX收到的数据大小(responseText.length)是否小于原始文件大小?

时间:2016-04-22 21:18:19

标签: javascript ajax utf-8

我想通过javascript中的AJAX请求检查收到的数据。 为此,我需要检查接收数据的大小,并将其与服务器上的原始文件大小进行比较。

var xhr_object = new XMLHttpRequest();
... // Send AJAX request
var RetAjax = xhr_object.responseText;
console.log(RetAjax.length);

我已经测试了不同类型的文件。

  • 将图像文件作为jpeg,AJAX接收的数据大小约为原始大小的70%。
  • 使用文本文件,这大约是96%。 但是我可以通过以下测试看到一件有趣的事情:

我试图先用ANSI格式编码文本文件,然后用UTF-8编码,不用BOM。请参阅下表中的结果。

Encodage --- ORG文件大小--- AJAX数据大小

ANSI ---------- 4,792字节 ------ 4,506字节

UTF-8 --------- 4,986字节------ 4,792字节

正如我们所看到的,ANSI ORG文件和UTF-8 AJAX接收数据之间的文件大小相同。

所以我的问题是:

  • 原始文件大小与AJAX接收数据之间的关系是什么?
  • 客户端和服务器之间是否存在TEXT文件的编码问题?
  • 将其他类型的文件作为图像文件怎么样?有没有办法检查正确的文件大小?

提前感谢您的回答。

此致

0 个答案:

没有答案