URL 规范化的主要目的之一是避免GET
对产生完全相同结果的不同 URL 的请求。
现在,我知道您可以检查canonical tag
甚至比较两个 URL 的 HTML 以查看它们是否相同,但是您必须下载完全相同的资源两次才能做到这一点,这超过了我之前所说的观点。
有没有办法检查重复的内容只做一个 HEAD 请求?如果没有,有没有办法只下载<head>
网页的一部分而不下载整个文档?
我可以想到最后一个的解决方案,我只是想知道是否有直接的解决方案。
URL 规范化的主要目的之一是避免GET
对产生完全相同结果的不同 URL 的请求。
现在,我知道您可以检查canonical tag
甚至比较两个 URL 的 HTML 以查看它们是否相同,但是您必须下载完全相同的资源两次才能做到这一点,这超过了我之前所说的观点。
有没有办法检查重复的内容只做一个 HEAD 请求?如果没有,有没有办法只下载<head>
网页的一部分而不下载整个文档?
我可以想到最后一个的解决方案,我只是想知道是否有直接的解决方案。
根据 MSDN 文档,您的问题的解决方案如下
Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create(url), HttpWebRequest)
Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
Console.WriteLine(ControlChars.Lf + ControlChars.Cr + "The following headers were received in the response")
Dim i As Integer
While i < myHttpWebResponse.Headers.Count
Console.WriteLine(ControlChars.Cr + "Header Name:{0}, Value :{1}", myHttpWebResponse.Headers.Keys(i), myHttpWebResponse.Headers(i))
i = i + 1
End While
myHttpWebResponse.Close()
让我解释一下这段代码 第一行使用指定的 URL 和第二行和第三行创建一个 HttpWebRequest 显示从 URI 和第四到第八行接收到的响应中存在的所有标头 - Headers 属性是一个 WebHeaderCollection。使用它的属性来遍历集合并显示每个标题和第十个以关闭请求,如果您想要网页的唯一标题部分,那么 PHP 类可在http://www.phpclasses.org/package/4033免费获得-PHP-Extract-HTML-contained-in-tags-from-a-Web-page.html