Flickr API: La documentazione e i primi passi con phpFlickr

Nello scorso articolo abbiamo visto come recuperare una chiave API e abbiamo iniziato ad impostare la nostra applicazione, oggi vediamo invece come muoverci all’interno della documentazione e cosa possiamo usare per interfacciarci con le API in maniera rapida e indolore.

La documentazione: i kit API

Per prima cosa diamo un’occhiata alla pagina della documentazione: quelle che ci interessano al momento sono la sezione Kit API e la sidebar a destra contenente i metodi API.

Nella sezione Kit API troviamo una raccolta di classi in vari linguaggi di programmazione: questi kit ci permetteranno di accedere alle API in maniera più rapida e semplice evitandoci di sviluppare i metodi necessari alle operazioni che vogliamo svolgere.
Nel nostro esempio utilizzeremo un kit API in php, phpFlickr: scarichiamolo (al momento della stesura di questo articolo la versione più recente è la 3.1) e dall’archivio preleviamo il solo file phpFlickr.php (per quelli che sono i nostri scopi è sufficiente) e copiamolo nella cartella include del nostro progetto.
Se provi ad aprirlo noterai che all’interno della classe sono presenti tutti i metodi elencati nella sezione Metodi API della documentazione.

La documentazione: i metodi API

In questa sezione troviamo tutti i metodi disponibili, suddivisi per categorie; cliccando su uno di essi si aprirà una pagina con la spiegazione dettagliata di quel metodo, la richiesta o meno dell’autenticazione, gli argomenti, i codici di errore e un esempio di risposta alla sua chiamata.
Inoltre, in fondo alla pagina, nella sezione API Explorer, troviamo un link, seguendolo potremo eseguire vari test di chiamata a quel metodo, utile per verificare che una chiamata nella nostra applicazione vada o meno a buon fine.

Ma è venuto il momento di sporcarci un po’ le mani…

Come utilizzare phpFlickr?

Partiamo da qualcosa di semplice: vogliamo mostrare le ultime 10 immagini pubbliche caricate su Flickr (quindi senza un utente o parametri specifici), creiamo un file php e iniziamo con l’inclusione di phpFlickr:

include_once ‘phpFlickr.php’;

quindi inizializziamo una nuova istanza della nostra classe:

$myFlickr = new phpFlickr;

Ora siamo davvero pronti per cominciare: ipotizziamo di voler recuperare 4 immagini tra quelle pubbliche, non dovremo far altro che richiamare il metodo flickr.photos.getRecent (il cui unico parametro obbligatorio è la chiave API) in questo modo:

$images = $myFlickr->photos_getRecent(NULL,NULL,4);

Il parametro che abbiamo valorizzato è $per_page che è proprio quello che ci permette di definire il numero di immagini da recuperare; a questo punto la variabile $images conterrà qualcosa del genere:


Ora non ci resta che “stampare” queste immagini, inserirendole in una lista non ordinata con un link alla relativa pagina di Flickr:

ob_start();
?></pre>
&nbsp;
<ul>
<ul>
	<li class="”imageContainer”"><a title="">” href="https://www.flickr.com/photos/<!--?php echo $image['owner'];?-->/<!--?php echo $image['id'];?-->"” >
 <img src="”<?php" alt="" />buildPhotoUrl($image,’small’); ?>” alt=”<!--?php echo $image[‘title’]; ?-->” />
 </a></li>
</ul>
</ul>
&nbsp;
<pre>
<!--?php <br ?-->	$res = ob_get_contents();
	return $res;

Abbiamo cominciato chiamando la funzione ob_start() che ci permette di immagazzinare tutto il risultato della funzione nel buffer e di utilizzarlo solo al termine della stessa, quindi abbiamo aperto il tag <ul> e iniziato un ciclo foreach grazie al quale abbiamo scorso l’array contenuto nella variabile $images (la risposta xml nell’esempio sopra) e abbiamo stampato le immagini contenendole in un link ed utilizzando come valore dell’attributo title il nome dell’immagine su Flickr.
Avrai notato che nel tag <img /> ho usato un secondo metodo di phpFlickr, il metodo buildPhotoURL(): questo non fa altro (come puoi intuire dal nome) che costruire il link dell’immagine, utilizzando come parametri il riferimento all’immagine stessa e la dimensione (per una lista dei valori disponibili dai un’occhiata a questa pagina, stai però attento perché in phpFlickr i nomi sono un po’ diversi) che vogliamo darle.
Alla fine del ciclo abbiamo valorizzato la variabile $res con quanto presente nel buffer e l’abbiamo stampata a video.

Qualche metodo utile

Qui di seguito ti elenco i metodi di utilizzo comune per recuperare le immagini, alcuni sono gli stessi che ho usato nel mio plugin, tra parentesi ti indico anche il numero di riga all’interno di phpFlickr.php nel caso volessi dare un’occhiata al codice:

  • buildPhotoURL (355): costruisce il link relativo all’immagine
  • groups_getInfo (801): restituisce delle informazioni su uno specifico gruppo, utile per trovare l’id
  • groups_pools_getPhotos (836): recupera le immagini di uno specifico gruppo
  • people_findByEmail (898): recupera l’id di un utente a partire dal suo indirizzo email
  • people_findByUsername (904): recupera l’id di un utente a partire dal suo username
  • people_getPhotos (916): recupera le immagini di uno specifico utente (richiede autenticazione)
  • people_getPublicPhotos (943): recupera le immagini pubbliche di uno specifico utente
  • photos_getRecent (1026): recupera le immagini dichiarate come pubbliche
  • photosets_getPhotos (1331): recupera le immagini da un singolo photoset

Inoltre ecco la tabella di conversione delle dimensioni tra Flickr e phpFlickr:

Flickr phpFlickr
s (quadratino 75×75) square
t (miniatura, 100px sul lato lungo) thumbnail
m (medio, 240px sul lato lungo) small
– (medio, 500px sul lato lungo) medium
z (medio, 640px sul lato lungo) medium_640
b (grande, 1024px sul lato lungo) large
o (grandezza originale) original

Conclusione

Oggi abbiamo visto come districarsi con la documentazione e come iniziare con phpFlickr. Nella prossima parte del tutorial svilupperemo la classe della nostra applicazione e la faremo finalmente funzionare.

Tag: ,

L'autore

Appassionato di web design da qualche anno, ha deciso di prendere la strada del "uebdeveloper" perché ritiene di essere negato con la grafica (anche se ogni tanto ci prova lo stesso), spera di diventare presto un bravo sviluppatore.

Sito web dell'autore | Altri articoli scritti da

Articoli correlati

Potresti essere interessato anche ai seguenti articoli:

5 commenti

Trackback e pingback

  1. Flickr API: Diamo vita alla nostra applicazione | Your Inspiration Web
    [...] La scorsa volta ci siamo lasciati dopo aver capito come funziona phpFlickr, la classe che ci permette di interagire…
  2. Documentazione web | Dineandiscount
    [...] Flickr API: La documentazione e i primi passi … – Your Inspiration Web [...]