【问题标题】:HTTP request using hash.使用哈希的 HTTP 请求。
【发布时间】:2014-04-07 14:05:14
【问题描述】:

我正在阅读有关使我的 ajax 应用程序可抓取的信息。 根据谷歌的文档,我需要使用哈希更改我的 http 请求,所以来自:

http://www.example.com/get_data?param1=6

http://www.example.com/get_data#!param1=6

我真的不明白#!可以由我的服务器处理并采用参数。所以这让我觉得我不理解一般概念。如何使用哈希而不是“?”传递参数

谢谢

【问题讨论】:

  • Afaik,你不能,至少不能使用通用 GET 请求。哈希不会传输到服务器。如果我错了,请有人纠正我。
  • 您的服务器无法读取服务器上的哈希值。这是过时的技术。了解历史API
  • 不确定,但我认为它不会由服务器端自动处理,您必须使用javascript方法自己传递。
  • 那么谷歌在谈论这个时是什么意思?
  • 也许您可以发布指向您所指文档的链接。谢谢。 :)

标签: javascript ajax http seo web-crawler


【解决方案1】:

哈希是由 JavaScript 专门处理的,然后发出一个正常的 Ajax 请求。 This StackOverflow question 为您提供了一些有关如何使用 JavaScript 检测散列变化的信息。一旦哈希改变:

var queryString = window.location.hash.replace(/^#/, "");
var xhr = new XMLHttpRequest();
var url = "/foo?" = queryString;

xhr.onreadystatechange = function() {
    ...
};

xhr.open("GET", url);
xhr.send(null);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-09
    • 2018-09-03
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-26
    相关资源
    最近更新 更多