2013-03-12 6 views
7

Ich habe viele Dinge ausprobiert, aber ich bin nicht in der Lage, eine richtige API zu bekommen, die mir die +1 Zählung in Google Plus zurückgibt. mitWie bekomme ich die +1 Zählung in Google plus mit einer API

ich schon versucht: -

Getting Counts for Twitter links, Facebook likes and Google +1 with Jquery and AJAX

Getting Google+ subscription count with jQuery

How do I get the counter of a google plus +1 button?

Aber keiner von ihnen mir die Antwort gibt.

Irgendwelche Gedanken ....

Thanks :)

+0

möglich Duplikat [? Wie kann ich den Zähler eines google plus + 1-Schaltfläche erhalten] (http://stackoverflow.com/questions/ 7403553/how-do-i-get-the-counter-einer-google-plus-1-button) – redbmk

Antwort

1

Derzeit ist die API bietet keine Methode, um die 1 Anzahl abzurufen. Ein Workaround wäre, es direkt von der + 1-Schaltfläche zu holen, wie beschrieben here (Sie bereits verknüpft, aber ich glaube nicht, dass es einen anderen Weg gibt).

2

Sie könnten Ihre eigene Funktion mit the link you and jgillich mentioned schreiben. Dies würde mit jQuery etwas vereinfacht werden.

Hier ist ein jsfiddle ich als Beispiel gemacht. Sie müssen wahrscheinlich etwas wie PHP verwenden, um von der Site zu holen, wenn Sie Inter-Domain-Probleme umgehen wollen. Es könnte in etwa so aussehen (Domänen ignorieren):

$('#myInput').keyup(function() { 
    var url = 'https://plusone.google.com/_/+1/fastbutton?url=' + encodeURIComponent($(this).val()); 
    $.get(url, 
     function (data) { 
      var aggregate = $('#aggregateCount', data).html(), 
       exactMatch = $('script', data).html().match('\\s*c\\s*:\\s*(\\d+)'); 

      $('div').html(exactMatch ? exactMatch[1] + ' (' + aggregate + ')' : aggregate); 
     } 
    ); 
}); 
+0

Diese URL gibt eine 404 –

+0

Ja, das ist eine inoffizielle, nicht unterstützte Methode. Es scheint, dass sich die URL geändert hat, wie bereits erwähnt [http://stackoverflow.com/questions/7403553/how-do-i-get-the-counter-of-a-google-plus-1-button/7409062 # 7409062). Es hat im März funktioniert. – redbmk

1

das funktioniert für mich:

var _url = 'http://mylink.com/'; 
$.getJSON('http://anyorigin.com/get?callback=?&url=' + encodeURIComponent('https://plusone.google.com/_/+1/fastbutton?url=' + _url)).done(function(data,status,xhr){ 
    console.log($(data.contents).find('#aggregateCount').html()); 
});