Firefox似乎预取了元标记中设置的所有内容,如下所示:

<link rel="next" href="http://domain.com/page/2">

有关更多信息,请参见:http://developer.mozilla.org/en-US/docs/Link_prefetching_FAQ

现在在我的网站上,当有多个页面(例如评论)时,我一直在使用rel =“next”和rel =“previous”,因为我认为这是很好的标记,可用于帮助某些读者或搜索引擎机器人。

但是,我也一直在尝试跟踪用户阅读的最后一条评论是什么,但这并没有奏效(在您花了几个小时来做​​一些简单的事情时,这是一个愚蠢的时代)。

基本上,例如,当用户读取第2页(共3页)时,我更新数据库以表示他们已阅读第2页,而不是第3页。但是,由于预取了第3页,因此将运行该页的代码,并针对该页触发SQL更新即使用户从未真正阅读过第3页,该页面也是如此。

所以实际上我有几个问题:
  • 有什么办法可以在保持“next”和“prev”标记的同时避免这种情况?还是仅删除这些元标记会更容易?
  • 我还应该了解并尝试处理其他预取形式吗?
  • 是否有一种特殊的方法来判断某些内容是否只是预取,例如特殊的请求 header ?
  • 最佳答案

    按照以下顺序回答您的问题:

  • 之类的。我认为,您可以在URI的末尾添加?something以使其不可预取。
  • 几乎可以肯定。 Chrome也会执行各种预取操作,因此?something技巧可能无法在其中起作用。
  • 是的。请参阅您链接到的FAQ中的https://developer.mozilla.org/en-US/docs/Link_prefetching_FAQ#As_a_server_admin.2C_can_I_distinguish_prefetch_requests_from_normal_requests.3F
  • 关于firefox - Mozilla Firefox预取rel ="next",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12281548/

    10-13 01:52