C# HttpWebResponse 字符串返回 ASCII 字符,而不是网页 HTML
C# HttpWebResponse string returning ASCII characters, not the webpage HTML
我正在开发一个小程序来自动执行一些 IT 任务。该程序的工作原理是让用户将电子邮件 header 文本粘贴到文本框中,然后解析文本以找出要检查的电子邮件的重要方面。
我似乎无法弄清楚的一个功能是域位置。我希望能够查找域以找出它们的来源、activity、存在等。我为此使用网站 VirusTotal,因为它可以免费使用并提供大量信息。
出于某种原因,我无法正确使用此站点的 HttpWebRequest + HttpWebResponse 方法。我尝试在 Google、Microsoft、Sony 等其他网站上执行此操作,它们都按预期通过下载 HTML 代码工作。我没有下载 HTML 代码,而是从 VirusTotal 的网络响应中得到的只是两个 ASCII 字符(它们看起来像黑色方块)。是什么原因造成的?我的解决方法是什么?
这是我的确切代码
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);
}
有关更多信息,请参阅我在问题下的评论。我找到了解决办法。
有关详细信息,请参阅 this link。干杯!
我正在开发一个小程序来自动执行一些 IT 任务。该程序的工作原理是让用户将电子邮件 header 文本粘贴到文本框中,然后解析文本以找出要检查的电子邮件的重要方面。
我似乎无法弄清楚的一个功能是域位置。我希望能够查找域以找出它们的来源、activity、存在等。我为此使用网站 VirusTotal,因为它可以免费使用并提供大量信息。
出于某种原因,我无法正确使用此站点的 HttpWebRequest + HttpWebResponse 方法。我尝试在 Google、Microsoft、Sony 等其他网站上执行此操作,它们都按预期通过下载 HTML 代码工作。我没有下载 HTML 代码,而是从 VirusTotal 的网络响应中得到的只是两个 ASCII 字符(它们看起来像黑色方块)。是什么原因造成的?我的解决方法是什么?
这是我的确切代码
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);
}
有关更多信息,请参阅我在问题下的评论。我找到了解决办法。
有关详细信息,请参阅 this link。干杯!