Serveis Web amb Opendata

De Cacauet Wiki
Salta a la navegació Salta a la cerca

Farem una pràctica de serveis Web utilitzant dades obertes del projecte opendata.

Introducció

Articles previs:

Farem un servei web que ens ofereixi una API per demanar dades concretes. Les dades que utilitzem han de ser dades obertes per no vulnerar cap propietat intel·lectual o dret a la privacitat.

Al opendata de molts ajuntaments trobarem dades obertes per poder realitzar aplicacions diverses. Per exemple, al de Barcelona n'hi ha moltes:

http://opendata-ajuntament.barcelona.cat

El què farem serà oferir una interfície (API) que permeti fer consultes sobre aquestes dades.


Guia

Seguiu el següent esquema:

  1. Tria un conjunt de dades o dataset, per exemple, la estimació dels preus dels habitatges dels anys 2007-2012
  2. Descarregueu les dades en format CSV
  3. Creeu un projecte amb Laravel
  4. Creeu una migració amb la definició de la taula/es
  5. Creeu un seeder per insertar les dades del nostre CSV dins de la taula
  6. Creeu una API amb diversos punts d'entrada per poder demanar dades com:
    • Datasets disponibles (en l'exemple, llistat de barris).
    • Descàrrega d'un dataset en format JSON (en l'exemple, serien les dades d'un barri en concret)
    • Consulta d'una dada única concreta (en l'exemple, el preu del sòl per un barri i any concret)
  7. Documenta la teva API perquè els altres puguin accedir a les teves dades

Totes les dades les hem de tornar en format JSON, és el més còmode per treballar després en un client.

IMPORTANT: la documentació compta un 33% de la nota d'aquesta pràctica. S'ha de fer a la WIKI del Github. Pots copiar l'exemple de les taules fetes en format mediawiki d'aquí:

https://github.com/emieza/laravel-karaoke/wiki/API