【问题标题】:Twitter button: wrong count (too many)Twitter按钮:错误计数(太多)
【发布时间】:2013-06-04 19:04:55
【问题描述】:

我在我的网络中使用这个 TWEET BUTTON 代码(从 GWT 插入):

<a href=\"https://twitter.com/share\" class=\"twitter-share-button\"
data-url=\"http://www.example.com/#!v;id="+diagramId+"\" 
data-text=\""+diagramTitle+"\" data-via=\"example\">Tweet</a>

当我点击它时,结果是正确的。这条推文发布:

MYTITLE http://www.example.com/#!v;id=r5sWfujKlSua 通过@example

但是,按钮显示的数据计数有问题。我会说它正在计算http://www.example.com 而不是http://www.example.com/#!v;id=r5sWfujKlSua 的推文总量(应该是 0 和它的 79)。

有什么想法吗?谢谢

【问题讨论】:

    标签: html gwt twitter tweets


    【解决方案1】:

    您需要使用 %23 对 # 符号进行 URL 编码。这类似于在推文中添加哈希标签,如discussion on dev.twitter.com 中所述;请参阅 Ben Ward 的回复。

    仅使用 HTML 和 javascript(无 GWT),以下计数 example.com,因为 # 标记未编码在 data-counturl 属性中:

    <a href="https://twitter.com/share" class="twitter-share-button"
        data-url="http://www.example.com/#!v;id=0" 
        data-counturl="http://www.example.com/#!v;id=0" data-via="example">Tweet</a>
    

    当我在 data-counturl 属性中用 %23 替换 # 时,我得到一个数字 0:

    <a href="https://twitter.com/share" class="twitter-share-button" 
        data-url="http://www.example.com/#!v;id=0" 
        data-counturl="http://www.exmaple.com/%23!v;id=0 data-via="example">Tweet</a>
    

    【讨论】:

    • 非常有趣!但是 URL 'example.com/%23!v\;id=0' 会将您带到不同的(无效)站点,而不是正确的 'example.com/#!v\;id=0'。然后我应该实现一个 servlet 将 %23 转换回#?
    • 另外,您在 !v 之后添加了一个 \。有什么特别的原因吗?
    • 我更新了我的答案。您不需要实现任何 servlet。 URL 编码需要在 data-counturl 属性中进行。 !v 之后的 \ 也是一个错字。
    猜你喜欢
    • 2014-07-21
    • 1970-01-01
    • 1970-01-01
    • 2016-06-18
    • 1970-01-01
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多