L’API di Flickr: il metodo flickr.photos.getInfo (1)

Quando si decide di mettere mano alle API di Flickr è indispensabile conoscere la struttura delle URL delle immagini. Il modello generale delle anteprime è

http://farm{farm-id}.static.flickr.com/{server-id}/{id}_{secret}_{s}.jpg

Questo modello di URL si adatta alle immagini pubbliche, ossia visibili a tutti gli utenti, registrati o meno che siano a Flickr.

Ma, concretamente, come possono essere ottenuti i parametri necessari alla creazione delle URL?

Prima di tutto, se vi interessa solo un’immagine, basta accedere alla pagina della foto e cliccare sull’icona “Zoom”:

flickr_zoom

A questo punto è sufficiente scegliere la dimensione desiderata e prelevare l’URL della foto in fondo alla pagina.

Ma se stiamo progettando un’applicazione in cui le URL delle foto devono essere generate dinamicamente, non è ammissibile recuperarle manualmente, e diventa necessario ricorrere ad un po’ di codice.

I metodi dell’API possono essere diversi e, ovviamente, cambiano a seconda degli scopi del programmatore. Uno di questi è flickr.photos.getInfo.

Il metodo accetta tre argomenti, due obbligatori e uno facoltativo.

  • api_key (Obbligatorio)
  • photo_id (Obbligatorio)
  • secret (Facoltativo)

Ovviamente, avete bisogno della chiave API, sempre indispensabile in tutte le vostre chiamate, qualunque sia il metodo che invocate. Avete, poi, bisogno dell’ID della foto che vi interessa.

L’ultimo argomento consente di visualizzare la fotografia senza che sia necessaria la verifica dei permessi. Ovviamente, sarà utile solo per immagini che non siano pubbliche.

Come mandare la richiesta a Flickr? Attraverso una semplicissima URL in formato REST.

Il nostro problema, quindi, in tutte le richieste che invieremo a Flickr, sarà quello di comporre questa URL. Ecco come dovrebbe apparire una prima semplice URL che invochi il metodo flickr.photos.getInfo:

http://api.flickr.com/services/rest/?method=flickr.photos.getInfo&photo_id=value&api_key=value

photo_id e api_key sono i due argomenti del metodo flickr.photos.getInfo. photo_id è ricavabile dall’indirizzo della pagina della foto, mentre api_key è la vostra chiave API, che potete richiedere qui.

Una volta costruita l’URL, per verificarne il funzionamento basta digitarla nella barra degli indirizzi del browser, per avere una risposta in formato REST (ossia un semplice blocco di codice XML).

Se la richiesta è stata compilata correttamente, l’attributo stat del nodo padre rsp avrà valore “ok“. In caso contrario avrà valore “fail“.

Ecco come appare il blocco XML di una risposta andata a buon fine:

risp_getinfo

Sta al programmatore accedere a nodi e attributi con il linguaggio che preferisce.

Annunci