下载JSON文件,但解析显示不可读的字符

时间:2017-07-07 17:17:24

标签: c# json character-encoding

我试图从为本地网站创建的ParseHub API下载JSON文件。如果我在浏览器中输入URL,我将获得格式化的JSON格式。

但是当下载到我的C#应用​​程序时,它只显示随机,不可读的字符,如下图所示: Console app displaying the result of downloaded JSON

我尝试将该页面下载为字符串:

Uri uri = new Uri(url); //url is the link to my API page
HttpClient wc = new HttpClient();

string json = await wc.GetStringAsync(uri);

在调试会话期间,我看到下载并保存在字符串json中的不可读字符。

我在" Postman"中尝试过该网址,它给了我:Postman Headers tab

注意:它说Content-Encoding:gzip。

我认为这可能是个问题。

感谢任何帮助。

谢谢, 安德鲁

1 个答案:

答案 0 :(得分:0)

如果是gzip编码,则可以将数据作为流获取,然后通过GZipStream读取

理想情况下,您应该使用WebClient而不是HttpClient。我怀疑单独进行更改就足以让它自动解压缩。