计数Facebook评论不再有效

时间:2014-08-06 14:22:53

标签: javascript facebook facebook-graph-api

今天以某种方式Facebook评论停止了工作。 :/

我有javascript:

(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/pl_PL/all.js#xfbml=1&appId=418722848267200";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));

和HTML:

<span class="comment"><fb:comments-count href="URL"></fb:comments-count></span>

但我收到了:

{"error":{"message":"Top level access token or app id not specified for batch request.","type":"GraphBatchException"}}

2 个答案:

答案 0 :(得分:0)

我可以为下面的HTML块提出一个预期可行的解决方法,但它不起作用,因为Facebook破坏了一些东西:

<span class="fb-comments-count" data-href="URL">0</span>

您可以添加以下脚本以使其正常工作:

var $element = $(".fb-comments-count") // you can specify your selector here
$element.removeClass("fb-comments-count") // prevent fb from wrongly set this value
var url = $element.attr("data-href")
$.ajax({
    url: 'https://graph.facebook.com/?ids=' + url,
    type: 'POST',
    dataType: "jsonp",
    success: function (data) {
        $element.html(data[url].comments);
    }
})

答案 1 :(得分:0)

您可以添加以下更新脚本以使其正常工作(2017):

var url = window.location;
$.ajax({
    url: 'https://graph.facebook.com/?ids=' + url,
    type: 'POST',
    dataType: "jsonp",
    success: function (data) {
        alert(data[url].share.comment_count);
    }
})