我有一个Android应用程序正在从使用IIS托管该文件的服务器下载文件。我有一个进度条,在下载文件时向用户显示。如果我在dropbox上托管我的文件并从那里抓取它而不是我的IIS服务器,则进度条正常工作。但是,当我从IIS服务器获取文件时,进度条的最后一次更新将其压缩到66%,然后文件完成下载。我在下载后检查了文件大小,它肯定是获取整个文件。这是一个我正在使用的mp4文件,我有'.mp4'的MIME类型设置为:'video / mpeg'虽然我也试过'video / mp4','file / mpeg'没有更正问题。我想也许它与IIS中的压缩设置有关,所以我禁用了静态和动态压缩,这使得进度条一直到100%,但使下载花费更长时间。 IIS中是否存在可能导致此行为的其他设置?
答案 0 :(得分:1)
我在IIS服务器上启用了Dynmaic压缩,这导致对HTTP请求的响应包含的文件大小比实际文件大。我在回答中得到的大小是我如何确定进度条的设置距离。它足够聪明地意识到文件已经完成,但进度条基于膨胀的文件大小。我不确定为什么动态压缩会使其报告的大小比实际大。如果有的话,我会想到它可以提供更小的尺寸。但无论如何,我关闭了动态压缩,现在一切都很顺利。