Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/445.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从站点响应读取的文件与实际文件不完全匹配_Javascript_Jquery_Ajax_Byte - Fatal编程技术网

Javascript 从站点响应读取的文件与实际文件不完全匹配

Javascript 从站点响应读取的文件与实际文件不完全匹配,javascript,jquery,ajax,byte,Javascript,Jquery,Ajax,Byte,尝试使用javascript和ajax将zip文件的内容读入变量时, 我得到的字节比下载文件时少 例如:文件大小为573字节,但读取内容后变量的长度将为564字节 这是我的请求代码: getRequest : function(Url, params, _success, _error) { var Url = Url; var paramsString = this.encodeParams(params); if (ParamsString !

尝试使用javascript和ajax将zip文件的内容读入变量时, 我得到的字节比下载文件时少

例如:文件大小为573字节,但读取内容后变量的长度将为564字节

这是我的请求代码:

getRequest : function(Url, params, _success, _error) {
        var Url = Url;
        var paramsString = this.encodeParams(params);
        if (ParamsString != "") {
            Url = Url + "?" + ParamsString;
        }
        var RequestHeaders = this.getHeaders();

        $.ajax({
            type : "GET",
            url : Url,
            headers : RequestHeaders,
            success : function(data, textStatus) {
                _success(data);
            },
        error : function(jqxhr, textStatus, errorThrown) {
            _error(jqxhr.responseText);
            }
    });
}
保存到变量:

getRequest(url,{},
    function(data){zipContents=data},
    function(data){alert(data)});
如果您能帮我找出原因,我将不胜感激


谢谢

您可能需要对HTTP请求进行一些嗅探。Chrome inspector中的“网络”选项卡对此很有用。 特别是,检查服务器返回的内容长度头。是573字节还是564字节? 还要检查内容类型标题-它应该是application/zip


如果发现这些值中的任何一个不匹配,则可能是服务器需要配置。您是否尝试过将文件移动到另一台服务器?

您可能需要对HTTP请求进行嗅探。Chrome inspector中的“网络”选项卡对此很有用。 特别是,检查服务器返回的内容长度头。是573字节还是564字节? 还要检查内容类型标题-它应该是application/zip


如果发现这些值中的任何一个不匹配,则可能是服务器需要配置。您是否尝试将文件移动到另一台服务器?

将加载的文件保存到内存中时会发生什么情况?这是一个有趣的问题,由于10字节的数据不多,我猜可能有一些元数据与windows中的文件相关,当您在应用程序中加载该文件时,这些元数据没有被读入。换行符是否会有一些差异?@Purplegoldfish-当我将其保存到内存时,我得到了正确的字节计数。@jfriend00-我认为服务器是正确的基于linux和我下载到一个windows。你认为我应该试着将文件下载到基于linux的机器上,看看是否有什么不同吗?将文件下载到linux机器上时,文件大小为573,与Windows中的大小相同…将加载的文件保存到内存中时会发生什么情况?这是一个有趣的问题,由于10字节的数据不多,我猜可能有一些元数据与windows中的文件相关,当您在应用程序中加载该文件时,这些元数据没有被读入。换行符是否会有一些差异?@Purplegoldfish-当我将其保存到内存时,我得到了正确的字节计数。@jfriend00-我认为服务器是正确的基于linux和我下载到一个windows。你认为我应该试着将文件下载到基于linux的机器上,看看是否有什么不同吗?将文件下载到linux机器上时,文件大小是573,与Windows中的大小相同。。。