2012-03-06 84 views
0

我在网上尝试了很多教程,但是我尝试的所有内容都非常老化并且失败 - 我甚至无法创建XMLHTTPRequest对象!如何获得使用JS的HTTP响应头?

我只想从google.com获取标题 - 我该怎么做?

+1

向谷歌提出请求将违反跨主机限制。您不能请求网站以外的主机名。 (尽管你可以在四处围绕 - 不是使用XMLHTTPRequestObject。) – Corbin 2012-03-06 01:38:59

+0

“真的很老”?你有什么尝试?什么“教程”?您正在使用哪些实际的,适当的,同行评审的书籍? – 2012-03-06 01:45:14

回答

3

您将使用xhr.getResponseHeader()来获取单个标头,或xhr.getAllResponseHeaders()来读取XMLHttpRequest响应中的所有标头。

这不会为你工作的原因:

  • XMLHttpRequest是区分大小写的。如果您全部使用大写字母HTTP,则会失败。
  • 除非您是一位谷歌员工将代码添加到google.com,否则您的请求将成为same origin policy的受害者。您必须将您的服务器用作代理才能从Google请求中获取标头。
0

你不能简单地做这个由JS。您将不得不使用AJAX并向PHP,ASP,Java或其他任何服务器请求。 XMLHTTPRequest应该这样做 - 如果你真的想手动完成。但是它实际上不适用于外部域,所以你不得不对你的服务器上的页面执行XMLHTTTPRequest,这将提供标题。