Content-length 适用于某些文件类型和不同的 OS?

Content-length works for some file type and in different OS?

我想从我的服务器获取我的某种类型文件的长度,例如:.mp4、.xml、.png 和自定义文件类型 .500!

我用 C# 代码统一打印了长度:

public class Tmp_ContentLength : MonoBehaviour {
    public List<string> urls = new List<string> ();


    void Start () {

        for (int i = 0; i < urls.Count; i++) {
            print (urls[i]);

            StartCoroutine (GetFileSize (urls[i],
                (size) => {
                   print ("File Size::> " + size);

                }));
        }
    }

    IEnumerator GetFileSize (string url, Action<Int32> result) {
        UnityWebRequest uwr = UnityWebRequest.Head (url);
        yield return uwr.SendWebRequest ();
        string size = uwr.GetResponseHeader ("Content-Length");

        if (uwr.isNetworkError || uwr.isHttpError) {
            print("Error While Getting Length: " + uwr.error);
            if (result != null)
                result (-1);
        } else {
            if (result != null)
                result (Convert.ToInt32 (size));
        }
    }
}

在检查器中用真实的 Urls 填充 urls 字段。

所以,我可以在 unity 编辑器中获取所有文件的长度,但是当我导出 .apk 和 运行 时,我将打印 .mp4 和 .png,而不是 .xml和 .500(我的自定义文件类型)。

1- 有什么问题或者我错了吗? 2- 如何为 .xml 和我的自定义文件类型启用 Content-length header? 3- unity editor 和 android for get Content-length 有什么不同?

最好的问候,抱歉英语不好!

所以,经过反复尝试!我发现我们需要在服务器上禁用 gzip,我使用 .htaccess files