Sviluppo con le API di Foursquare: l’autenticazione

Scritto da il 4 maggio 2012 Stampa


Tre mesi fa avevamo introdotto la nuova versione del sito di Foursquare dedicato agli sviluppatori; il sito è fatto particolarmente bene, abbastanza completo nella documentazione e ben fornito di casistiche ed esempi.

Un passo fondamentale da compiere quando si decide di utilizzare le API di Foursquare è familiarizzare col concetto di autenticazione e, quando si parla di autenticazione, molto spesso ci si riferisce al protocollo OAuth 2.0.

In poche parole, tale protocollo consente uno scambio di informazioni tra un provider e un consumer in totale sicurezza, senza scambi di identità, molto spesso tramite un token che viene rilasciato dal provider e che viene utilizzato nei “dialoghi” tra le parti; OAuth 2.0 è universalmente riconosciuto, al punto che viene utilizzato come sistema di autenticazione per l’utilizzo delle API di Facebook, Twitter, Google e molti altri ancora.

Una volta che ci si è fatti un’idea di cos’è questo protocollo (c’è parecchia ed esaustiva documentazione in internet, completa di schemi, grafici ed esempi), si può cominciare ad entrare nel mondo delle API di Foursquare e il primo passo è registrare la propria applicazione. Per registrarla, è necessario avere un account su Foursquare oppure crearsene uno nuovo dedicato al solo sviluppo (in entrambi i casi viene richiesta la conferma della mail).

Una volta autenticata la mail si accede ad un form (vedi immagine) in cui viene richiesto:

  • il nome della app
  • il sito in cui si vogliono utilizzare le API
  • un url a cui far pervenire le risposte del provider (attenzione che ambo gli url devono essere inseriti con http://)
  • un captcha.

Se il submit del form ha successo, si otterranno il proprio Client ID e il Client Secret fondamentali per l’OAuth e per le successive richieste.

A questo punto entra di nuovo in gioco l’OAuth ed è necessario ottenere un token; a seconda della tipologia di app che si sta sviluppando ci sono due metodi.

Web App

Bisogna fare una richiesta, tramite un browser ad esempio, all’url

https://foursquare.com/oauth2/authenticate?client_id=CLIENT_ID&response_type=code&redirect_uri=REGISTERED_REDIRECT_URI

dove CLIENT_ID e REGISTERED_REDIRECT_URI sono gli stessi che sono stati utilizzati in fase di registrazione.

Se la richiesta va a buon fine il server risponderà al proprio url

https://YOUR_REGISTERED_REDIRECT_URI/?code=CODE ed è importante annotarsi il CODE, perché è necessario utilizzarlo nella successiva richiesta del tipo

https://foursquare.com/oauth2/access_token?client_id=CLIENT_ID&client_secret=CLIENT_SECRET&grant_type=authorization_code
&redirect_uri=REGISTERED_REDIRECT_URI&code=CODE

da cui si ottiene un JSON di risposta con l’ACCESS TOKEN.

Ajax

Se si sviluppa in puro Ajax (Javascript quindi) il processo è più immediato: è sufficiente fare una richiesta all’url

https://foursquare.com/oauth2/authenticate?client_id=CLIENT_ID&response_type=token&redirect_uri=REGISTERED_REDIRECT_URI

da cui si ottiene una risposta del tipo

http://REGISTERED_REDIRECT_URI/#access_token=ACCESS_TOKEN.

Una volta che si è in possesso dell’ACCESS TOKEN, il più è fatto e comincia il divertimento con l’uso degli endpoints, il cui utilizzo è minuziosamente descritto e documentato nel sito developer.foursquare a a questo indirizzo (in inglese).

 Foto di Mikkel Rønne

Le App ,

Post correlati

1 commento

  1. Squaredar, come nasce una possibile feature di Foursquare, 31 maggio 2012 Rispondi

    […] Uno dei progetti più interessanti presentati viene da Akshay, evangelist della piattaforma e esperto di API a tutto tondo; la caratteristica che rende il suo lavoro unico è che è interamente stato sviluppato con le API pubbliche, ovvero quelle a disposizioni di tutti e di cui abbiamo parlato in un recente articolo. […]


Lascia un commento

About

L’Osservatorio Foursquare Italia è un sito dove troverai informazioni, novità, approfondimenti, nuovi utilizzi – tutto sulla geolocalizzazione e in particolare su Foursquare.

Questo sito è interamente in italiano e si rivolge a tutti i curiosi e agli appassionati di Foursquare ma anche a chi fa marketing, alle pubbliche amministrazioni, alle aziende piccole o grandi che vogliono imparare e sperimentare qualcosa di nuovo, divertente ed efficace.

Per saperne di più su questo sito...

Disclaimer

Questa opera è distribuita con licenza Creative Commons Attribuzione - Non commerciale - Non opere derivate 2.5 Italia
Licenza Creative Commons

Chiunque è libero di prendere spunto dai nostri post, ma è pregato di mettere ben in evidenza la fonte e l'autore del post originario. Grazie.

Foursquare Italia non è affiliato a Foursquare Labs, Inc.

Twitter Updates