我的网站根目录中有一个名为test.json的json文件。它托管在IIS 6.2版中的Windows Server 2012 R2上。 json文件是2698KB。 我编写了一个小型C#控制台应用程序,它非常简单,它访问文件然后将字节数组写入文件。
class Program
{
static void Main(string[] args)
{
WebClient client = new WebClient();
byte[] data = client.DownloadData("http://mywebsite/test.json");
File.WriteAllBytes("D:\\test\\download.json", data);
}
}
当我在本地计算机上运行此exe,然后将下载的文件与网站根目录中的原始文件进行比较时,两者是相同的。但是当我在服务器上运行exe(与托管站点的服务器相同)并将下载的文件与原始文件进行比较时,下载的文件总是被破坏,并且每次都在不同的地方或不同的方式。例如:
原Json:
"Deleted" : false,
"CreateDate" : "2012-09-04T07:57:41.5947956",
"ModUser" : "CFR",
腐败的Json:
"Language" : null,
"Dell," Lookup ":null," LanguageId ":1,"
它只是腐败而没有任何意义,无法解析。这个功能在这个网站上工作了很长时间,现在文件总是腐败。如果我通过Internet Explorer下载json,它在服务器上使用浏览器时也会损坏。但不是来自我的本地机器。我不知道可能导致这个问题的原因。任何帮助或提示都会非常感激。
答案 0 :(得分:1)
我找到了一个解决方法。我使用localhost ip 127.0.0.1将mywebsite添加到web服务器上的hosts文件中,现在当我访问json数据时,它不再是损坏的。