如何获取推特 URL 计数?
Posted
技术标签:
【中文标题】如何获取推特 URL 计数?【英文标题】:How to get twitter URL count? 【发布时间】:2015-11-17 07:49:10 【问题描述】:我有以下代码,但我不明白为什么它没有返回并在 html 正文中打印它..
var pageURL = document.URL;
var tweet = "https://cdn.api.twitter.com/1/urls/count.json?url='"+ pageURL + "'";
$.getJSON(tweet,function(json)
$('#twitterfeed').html(json.count);
);
<div id="twitterfeed"></div>
https://cdn.api.twitter.com/1/urls/count.json?url=http://www.google.com
返回 "count":23844636,"url":"http://www.google.com/"
以下似乎不起作用,有人知道为什么吗?
【问题讨论】:
HTML之前的javascript是否在同一个文件中? 是的,它在顶部。 把它包装在 $(function() // 你的代码在这里 );这将延迟它的执行,直到 DOM 被加载和解析。 【参考方案1】:https://cdn.api.twitter.com/1/urls/count.json 已弃用。
查看http://opensharecount.com 进行替换,如果您注册您的域,您可以将其更改为其中提到的 URL。
【讨论】:
谢谢,不错的选择,但是慢得多...:/ 我更喜欢慢,但工作不工作 ;-) 只是计算速度很慢,显示速度应该很快,因为我们使用的是 CDN。 谢谢,这绝对是一个不错的选择,但以某种方式限制:当 url 属于 youtue.com 或外部域名时,如何获取 youtube 视频的推文数量?我真的希望 Twitter 能提供一个替代方案,即使我们必须付费【参考方案2】:截至 2015 年 11 月 20 日,没有推文计数 API,所以请不要打扰:https://blog.twitter.com/2015/hard-decisions-for-a-sustainable-platform
【讨论】:
谢谢。根据博文的结尾,也许在不久的将来会有一个等价物?无论如何,我认为删除它是一个非常糟糕的决定。甚至 facebook API 在其 API 中也改进了这个点赞数。希望 twitter 能以更好的方式再次实现它。 “我们感谢您在过去 60 天内就您如何使用这些计数提供反馈,并期待在我们创建和改进工具以将 Twitter 内容集成到您的应用程序和网站时将其纳入”。【参考方案3】:默认情况下,jQuery 发出 AJAX 请求。由于它是跨域的,并且 CORS HTTP 标头在响应中不存在,因此它失败了。添加 &callback=?请求 URL 以发出 JSONP 请求
var pageURL = "http://www.google.com";
var urlParams = $.param( "url": pageURL );
var tweet = "https://cdn.api.twitter.com/1/urls/count.json?"+urlParams;
$.ajax(tweet, "dataType" :"jsonp" ).done(function(json)
$('#twitterfeed').text(json.count);
);
演示
http://jsbin.com/tasaloraje/edit?html,output
【讨论】:
它似乎不起作用,看看这个.. jsbin.com/yebotuwaya/edit?html,output 但是如果你删除 '" + pageURL + "' 并包含它工作的 url.. 你有任何为什么会这样? 通过为页面 URL 添加适当的 URL 编码,使用延迟的 $.ajax 调用(如 jQuery 开发人员推荐的那样)更改脚本。检查 jsFiddle 现在已弃用 (blog.twitter.com/2015/hard-decisions-for-a-sustainable-platform)。以上是关于如何获取推特 URL 计数?的主要内容,如果未能解决你的问题,请参考以下文章
如何在不使用 fql 的情况下获取帖子 URL 的 Facebook 点赞、分享和评论计数?