我正在使用Facebook的共享对话框来共享一个URL,比如。。。
http://www.example.com/products/9-some-name#!23
在该页面的HTML中,一个不同的URL(也带有片段标识符)被指定为规范URL,如
<link rel="canonical" href="http://www.example.com/products/9-canonical-name#!23">
<meta property="og:url" content="http://www.example.com/products/9-canonical-name#!23">
在我的Facebook个人资料中,共享的URL显示为
http://www.example.com/products/9-canonical-name?_escaped_fragment_=23
那是个虫子吗?(我希望共享URL按原样发布,即不是规范的URL,并且没有任何转换。)
更新
经过更多的调查,我意识到这与片段标识符无关。根本问题是,Facebook在用户档案中发布的URL是og:url
中的URL,而不是最初共享的URL。这似乎是无法改变的(正如我从一个相关问题中所理解的)。
根据在Facebook上分享最佳实践的文档,og:url应该是一个没有会话id或无关参数的url。Facebook上的所有共享都将使用og:url作为识别url。
developers.facebook.com/docs/shareing/最佳实践#标签