C#HttpWebResponse字符串返回ASCII字符,而不是网页HTML

时间:2018-05-24 21:23:45

标签: c# httpwebrequest httpwebresponse

我正在开发一个小程序来自动完成一些IT任务。该程序的工作原理是让用户将电子邮件标题文本粘贴到文本框中,然后解析文本以找出要检查的电子邮件的重要方面。

我似乎无法弄清楚的一个功能是域位置。我希望能够查找域名来确定它们的来源,活动,存在等。我正在使用VirusTotal网站,因为它可以免费使用并提供大量信息。

出于某种原因,我无法正确使用此网站的HttpWebRequest + HttpWebResponse方法。我尝试在谷歌,微软,索尼等其他网站上这样做,他们都通过下载HTML代码按预期工作。我从VirusTotal的Web响应中得到的只是两个ASCII字符(它们看起来像黑色方块),而不是下载HTML代码。造成这种情况的原因是什么?我的解决方法是什么?

这是我的确切代码

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.virustotal.com/#/domain/" + domain);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            if (response.StatusCode == HttpStatusCode.OK)
            {
                Stream receiveStream = response.GetResponseStream();
                StreamReader readStream = null;
                if (response.CharacterSet == null)
                {
                    readStream = new StreamReader(receiveStream);
                }
                else
                {
                    readStream = new StreamReader(receiveStream, Encoding.GetEncoding(response.CharacterSet));
                }
                string page = readStream.ReadToEnd();
                response.Close();
                readStream.Close();
                MessageBox.Show(page);
            }

1 个答案:

答案 0 :(得分:0)

有关详细信息,请参阅我的问题中的评论。我找到了解决方案。

有关详细信息,请参阅this link。干杯!