【问题标题】:Ajax crawlable application without hashbang没有 hashbang 的 Ajax 可抓取应用程序
【发布时间】:2014-05-30 03:27:04
【问题描述】:

我正在构建一个基于 Ajax 的网站。当加载 Dom 时,会向服务器发出异步 http 请求,该请求回答 JSON 文本,然后来自 JSON 的数据通过 javascript 放入 DOM 中。 谷歌爬虫只是不读取 javscript 之后加载的内容,所以我需要创建我的页面的 HTML 快照(在服务器上),并让我的服务器处理带有 hashbang 的请求。 但我怀疑我的请求中没有使用 hashbangs。 我唯一的 ajax req 类似于 http://www.apiservice.com?get_data=true 我如何告诉谷歌哪个请求可以获取整个页面的 HTML 快照以及我在哪里可以做到(也许将请求 url 放在站点地图中?)

谢谢你的好处

【问题讨论】:

    标签: javascript ajax node.js gwt


    【解决方案1】:

    我了解您的页面是通过两个步骤构建的:第一个请求服务器获取核心 html/javascript,第二个请求获取附加数据以显示在您的页面中。

    如果是这样,那么第一个请求就是带有 hashbang 的爬虫的请求。将它放在您的站点地图中很有意义。您的服务器应返回的静态 html 页面是由您的进程中的两个服务器调用生成的完整 html。

    如果您不为爬虫缓存静态 html 页面,而是动态生成它(例如,使用 htmlunit,请参阅this SO reference),那么这两个步骤都将在返回静态 html 快照之前执行。所以如果你缓存它,那么你应该确保你做同样的事情。

    【讨论】:

      猜你喜欢
      • 2012-06-05
      • 2013-09-13
      • 2015-08-12
      • 2013-07-29
      • 2011-08-04
      • 1970-01-01
      • 2013-08-11
      • 2023-03-15
      • 2013-04-12
      相关资源
      最近更新 更多