【问题标题】:Why is linkedIn adding a pound exclamation mark (hashbang) to my URL?为什么linkedIn在我的URL中添加了一个感叹号(hashbang)?
【发布时间】:2013-09-25 05:18:16
【问题描述】:

分享链接时,我注意到linkedIn 附加了一个“#!”重定向后到 URL 的末尾。这破坏了我的 Backbone.js 单页应用程序,因为我们在 URL 中使用了 pushstate,因此使用了“!”被解释为 Backbone.js 路由。

这是一个示例link(不是我的网站)。它将带您到: http://blog.mindresearch.net/blog/bid/336633/The-Connection-Between-Math-and-Neuroscience#!

我知道我可以在服务器端过滤它,或者在客户端以多种方式处理它,但这看起来很奇怪,我在网上没有看到关于这个主题的帖子,所以我想我会发布一个问题,询问它是什么,是否有办法摆脱它?

当然,我也会向 LinkedIn 支持发送电子邮件,但我认为这对遇到同样问题的其他人可能有用。

【问题讨论】:

  • 就是这样,Facebook 也是如此。克服它。

标签: ruby-on-rails backbone.js linkedin social-networking linkedin-jsapi


【解决方案1】:

散列后的任何内容都不会发送到服务器;我使用一个简单的客户端脚本来重定向这些 URL。一个天真的重定向,但它有效。除非 LinkedIn 和 Facebook 更改其传出重定向政策,否则我看不出有任何方法可以防止它发生。

<script>
  if( window.location.hash == '#!' ) {
    window.location.href = 'http://domain.tld/';
  }
</script>

当然它只适用于启用 JavaScript 的客户端,但根据我的经验,这些 hashbang URL 只会破坏这些客户端。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-22
    • 2018-11-14
    • 2020-05-03
    • 2010-10-11
    相关资源
    最近更新 更多