如何使用C#.net 4获取Web服务器标头时间

时间:2012-03-09 22:53:38

标签: c# .net http

在C#on .net 4.0上我试图获取互联网网站的标题日期/时间。

我的目标是通过使用HTTP而不是SNTP验证Internet时间的本地系统时间(在几秒内)。我是SNTP粉丝,但在这种情况下不会这样做。我发现this concept of using HTTP headers for time called "HTP"并希望在C#中复制它。

尝试在页面上使用MSDN示例使用HttpWebRequest.Headers集合,这不会返回Date(或其他许多内容)。

如果HttpWebRequest.Headers是获取此值的好方法,为什么我不能在此结果中看到Date?还有更好的方法吗?

var myHttpWebRequest=(HttpWebRequest)WebRequest.Create("http://www.microsoft.com");
myHttpWebRequest.GetResponse();
Console.WriteLine("\nThe HttpHeaders are \n\n\tName\t\tValue\n{0}",     
    myHttpWebRequest.Headers);

1 个答案:

答案 0 :(得分:4)

您似乎正在阅读请求标头,而不是阅读响应标头:

var myHttpWebRequest = (HttpWebRequest)WebRequest.Create("http://www.microsoft.com");
var response = myHttpWebRequest.GetResponse();
Console.WriteLine("\nThe HttpHeaders are \n\n\tName\t\tValue\n{0}", response.Headers);