| Accediendo con PHP a la API |
|
| Escrito por Valquiria | |
| domingo, 21 de diciembre de 2008 | |
|
Vamos a contar un poco como haciendo uso del lenguaje PHP podemos conectarnos a la Google Base Data API Requerimientos Basicos
Una vez instalado todo deberemos modificar la KEY que viene de ejemplo y se encuentra en la linea 14, si todavia no tienes tu propia Key puedes consultar el siguiente link, click aqui, Si es la primera vez que se utiliza esta aplicacion, hay que loguearse en la cuenta de Google y autorizar la utilizacion de la API.
Que hace la aplicacion de ejemploLa aplicacion lo que permite es que los usuarios envien nuevas recetas y manipulen las ya existentes, digase editar, eliminar y hacer busquedas sobre las ya existentes. Para ello utiliza tanto el metodo GET como el POSt para mantener dos informacion : la codificacion de autenticacion del usuario registrado AuthSub token y la Requested action (insert, update, delete, o batch).. En primera instancia se debe obtener la AuthSub token, que es un codigo de autorizacion del usuario, generado con un login. para ello la aplicacion posee una pagina de introduccion. Construir la pagina de introduccionUtilizando el frameword de Zend deberemos para lograr esto llamar al siguiente metodo estatico
function showIntroPage() { global $itemsFeedURL; $next_url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']; $redirect_url = Zend_Gdata_AuthSub::getAuthSubTokenUri($next_url, $itemsFeedURL, 0, 1); ... } En la aplicacion de ejemplo encontramos una funcion que utiliza otro de los metodos de framework para obtener dicha clave. function exchangeToken($token) { return Zend_Gdata_AuthSub::getAuthSubSessionToken($token); } Insertar una nueva Receta desde la aplicacionDentro de la aplicacion podremos encontrar una funcion llamada createOrEditEntry que es la encargada de crear el XML con el formato correspondiente para poder enviar a la API y de esta manera ingresar una nueva receta desde la aplicacion a la Google Base Data. Instanciamos el objeto y llamamos a la funcion que genera el XML function buildNewEntry() { return createOrEditEntry(new Zend_Feed_EntryAtom()); } Datos formato al XML con los datos del formulario enviado por POST function createOrEditEntry($entry) { $newEntry = $entry; $newEntry->category['scheme'] = 'http://base.google.com/categories/itemtypes'; $newEntry->category['term'] = 'Recipes'; $newEntry->title['type'] = 'text'; $newEntry->title = $_POST['recipe_title']; $newEntry->{'g:cuisine'} = $_POST['cuisine']; $newEntry->{'g:item_type'} = 'Recipes'; $newEntry->{'g:item_type'}['type'] = 'text'; $newEntry->{'g:cooking_time'} = $_POST['time_val'] . ' ' . $_POST['time_units']; $newEntry->{'g:cooking_time'}['type'] = 'intUnit'; $newEntry->{'g:main_ingredient'} = $_POST['main_ingredient']; $newEntry->{'g:main_ingredient'}['type'] = 'text'; $newEntry->{'g:serving_count'} = $_POST['serves']; $newEntry->{'g:serving_count'}['type'] = 'number'; $newEntry->content = $_POST['recipe_text']; return $newEntry; } Creando el codigo para enviar luego de editar un itemPara ello la aplicacion utiliza la misma funcion para generar el XML que se enviara al servidor, con la unica salvedad, que el objeto que se le enviara no sera uno recien instanciado, no un nuevo objeto, sino un objeto qure referencia a un item ya guardado y existente en Google
Fuente : http://code.google.com/apis/base/samples/php/php-sample-zend.html Enjoy !!
» No Comments
There are no comments up to now.
» Post Comment
|
| Siguiente > |
|---|
