2011-08-14

Api Google Plus, Uso y Ejemplos

Hoy comparto esta información con ustedes ya que veo que no hay tanta documentación ni un api oficial de google plus, pero por ahora esto es lo que he descubierto en estos días, para desarrollar app para google +.
Con esta info he desarrollado un pequeño widget para google plus, pueden verlo funcionando Aqui
Lo primero es tener la función que “desofusca” el json de Google
 
function GoogleJSON( $url ) {
	$googlejson 	= @file_get_contents( $url );
	$googlejson 	= substr( $googlejson, 5 );
	$instring 		= false;
	$inescape		= false;
	$lastchar 		= '';
	$output 		= "";
	for ( $x=0; $x<strlen( $googlejson ); $x++ ) {
 
		$char = substr( $googlejson, $x, 1 );
 
 
		if ( !$instring && ( preg_match( '/\s/', $char ) ) ) {
			continue;
		}
 
 
		if ( $instring ) {
			if ( $inescape ) {
				$output .= $char;
				$inescape = false;
			} else if ( $char == '\\' ) {
				$output .= $char;
				$inescape = true;
			} else if ( $char == '"' ) {
				$output .= $char;
				$instring = false;
			} else {
				$output .= $char;
			}
			  $lastchar = $char;
			  continue;
			}
 
 
			switch ( $char ) {
 
			case '"':
			$output .= $char;
			$instring = true;
			break;
 
			case ',':
			if ($lastchar==',' || $lastchar=='[' || $lastchar=='{') 
                        { 
					$output .= 'null';
			}
			$output .= $char;
			break;
 
			case ']':
			case '}':
			if ( $lastchar == ',' ) { 
				$output .= 'null';
			}
			$output .= $char;
			break;
 
			default:
			$output .= $char;
			break;
			}
		    $lastchar = $char;
		}
		usleep( 20000 ); //Le damos tiempo al script 20ms
	return json_decode( $output, true );
 
}
Con esto ya podemos enviarle la URL del “API” de google y obtener el resultado en JSON, veamos un ejemplo.
Como obtener información de un usuario de google plus.
 
   $plusid = '108170074439659702380'; // ID GOOGLE PLUS
   $visible_url = 'https://plus.google.com/_/profiles/get/' . $plusid ;
   $jsondata = GoogleJSON($visible_url);
   echo '<br>Array JSON<br><pre>';
   print_r($jsondata);
Con esto tenemos el ARRAY de los datos del usuario con el ID de Google Plus Ingresado, si queremos obtener la url de la foto de ese usuario accedemos al array de la siguiente manera:
echo $jsondata[1][2][3];
Si queremos obtener información del los círculos en los cuales el usuario ha sido ingresado podemos intentar hacer algo como:
 
   $plusid = '108170074439659702380'; // ID GOOGLE PLUS
   $visible_url = 'http://plus.google.com/_/socialgraph/
lookup/incoming/?o=%5Bnull%2Cnull%2C%22'.$plusid.'%22%5D&n=1000';
   $jsondata = GoogleJSON($visible_url);
   echo '<br>Array JSON<br><pre>';
   print_r($jsondata);
Con testo obtenernos el array de todos los usuarios que tienen en sus círculos al usuario con google ID 108170074439659702380
Bueno eso es todo lo que les puedo contar por ahora, espero que les sea de utilidad.

Fuente: Link

No hay comentarios: