2013-03-12 32 views
7

Tôi đã thử nhiều thứ nhưng tôi không thể nhận được API thích hợp sẽ trả về số lượt +1 trong google plus.cách nhận số lượt +1 trong google cộng với bất kỳ API nào

Tôi đã cố gắng sử dụng: -

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?

Nhưng không ai trong số họ là đem lại cho tôi câu trả lời.

Bất kỳ suy nghĩ ....

Cảm ơn :)

+0

thể trùng lặp của [? Làm thế nào để tôi có được truy cập của một google plus 1 nút] (http://stackoverflow.com/questions/ 7403553/how-do-i-get-the-counter-of-a-google-plus-1-button) – redbmk

Trả lời

1

Hiện nay, API không cung cấp bất kỳ phương pháp để lấy số lượng +1. Giải pháp thay thế là tìm nạp trực tiếp từ nút +1 như được mô tả here (bạn đã liên kết với nó, nhưng tôi không nghĩ có cách nào khác).

2

Bạn có thể viết chức năng của riêng mình bằng cách sử dụng the link you and jgillich mentioned. Điều này sẽ được đơn giản hóa một chút với jQuery.

Dưới đây là jsfiddle Tôi đã làm ví dụ. Bạn có thể sẽ phải sử dụng một cái gì đó như PHP để lấy từ trang web nếu bạn muốn phá vỡ các vấn đề liên miền. Nó có thể trông giống như thế này (bỏ qua các miền):

$('#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

Url này cung cấp một 404 –

+0

Có, đây là một phương pháp không chính thức, không được hỗ trợ. Có vẻ như URL đã thay đổi, như đã lưu ý [ở đây] (http://stackoverflow.com/questions/7403553/how-do-i-get-the-counter-of-a-google-plus-1-button/7409062 # 7409062). Nó đã hoạt động trở lại vào tháng Ba. – redbmk

1

này làm việc cho tôi:

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()); 
}); 
Các vấn đề liên quan