通过C#或浏览器下载时,Web服务器返回不同的文件版本

问题描述

我正在下载以下公共文件https://static.bitwiseinvestments.com/IndexPerformance/indexReturns-BITW70.csv

通过Webbrowser下载时,截至目前的结果一直到8月29日。

像下面的代码一样进行下载时,它为我提供了一个不同的文件版本,直到8月28日为止。

string csvFile = "https://static.bitwiseinvestments.com/IndexPerformance/indexReturns-BITW70.csv";

        byte[] byteArray = null;
        string csvString = null;
        using (var client = new WebClient())
        {
            client.Headers[HttpRequestHeader.UserAgent] = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/85.0.4183.83 Safari/537.36";

            byteArray = client.DownloadData(csvFile);
            StreamReader reader = new StreamReader(new MemoryStream(byteArray));

            // Contains only Data until August 28 2020
            csvString = reader.ReadToEnd();

            // Also contains only Data until August 28 2020
            client.DownloadFile(csvFile,@"c:\temp\bitw70.csv");
        }

        {
            var request = (HttpWebRequest)WebRequest.Create(csvFile);
            request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/85.0.4183.83 Safari/537.36";
            WebResponse response = request.GetResponse();
            StreamReader reader = new StreamReader(response.GetResponseStream());

            // Also contains only Data until August 28 2020
            string csvString2 = reader.ReadToEnd();
        }

服务器是否在请求中看到差异,因此选择传递另一个文件?如果是这样,我该如何避免呢?

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)