Google Plus Count url

Опитвам се да получа броя плюс едно, който имам за google plus, проверявам дали имам правилния брой с това

https://plusone.google.com/u/0/_/%2B1/fastbutton?count=true&url=MY_URL

Виждам, че google plus отхвърля моя URL (не връща 0 или нещо подобно)

I wanted to know if anyone can tell me if I have anything wrong in my url, I have these symbols in my url outside of letters and numbers

:
/
.
?
=
&
_

и моят url е форматиран така

(protocol)://(server [such as www]).(domain)/(text).php?(text)=(text)&(text)=(digits)&(text)=(text)

person Kevin    schedule 20.08.2012    source източник
comment
Предполагам, че можете да опитате да избегнете URL знака, така че неща като / да се предават правилно на сървъра на Google...   -  person kumarharsh    schedule 20.08.2012
comment
вижте това: stackoverflow.com/questions/7403553/   -  person kumarharsh    schedule 21.08.2012


Отговори (2)


Използвайте URL адреса

https://plusone.google.com/_/+1/fastbutton?url=http%3A%2F%2Fwww.yoursite.com%2Fpath%2Fyour%2fcontent

вместо това и следвайте решението, намерено в това въпрос (анализ за window.__SSR = {c:)

person Aron Cederholm    schedule 21.08.2012
comment
все още няма да работи за мен (вижте формата на моя URL адрес, може би нещо там ще създаде проблем) - person Kevin; 21.08.2012
comment
Мисля, че го реших, така че как да направите регулярен израз, който прави това (не е достатъчно удобно с това) Мога да заредя URL адреса като низ сега, но не знам как да извлека числото, също и да поправя моят проблем трябваше да променя символите & на %26 и изпратих GPlus_someotherstuff, което Google променя на googlePlus_someotherstuff, така че трябва да използвам googlePlus_someotherstuff в заявката си към google plus - person Kevin; 21.08.2012
comment
използвам php (вместо това може да използвам javascript) - person Kevin; 21.08.2012
comment
правилно, уверете се, че url_encode URL адреса, на който искате да разгледате броя плюсове. В php просто направете urlencode($url). Подходящ регулярен израз би бил preg_match('/window\.__SSR = {c: ([0-9]+)\.0/', $googleplusresonse, $matches);, което би довело до $matches[1], който да съдържа броя плюсове. - person Aron Cederholm; 22.08.2012

Мисля, че търсите това. Грозно е и Google очевидно не го поддържа, но все пак работи.

function shinra_gplus_get_count( $url ) {
    $contents = file_get_contents( 
        'https://plusone.google.com/_/+1/fastbutton?url=' 
        . urlencode( $url ) 
    );

    preg_match( '/window\.__SSR = {c: ([\d]+)/', $contents, $matches );

    if( isset( $matches[0] ) ) 
        return (int) str_replace( 'window.__SSR = {c: ', '', $matches[0] );
    return 0;
}
person Luke Mlsna    schedule 16.03.2013