REST in SPORE

Type:
pyconfr
Audience level:
Intermediate
Category:
présentation
Septembre 15th 4 après-midi – 4:30 après-midi

Description

SPORE (Specifications to a Portable REST Environment) est un moyen de décrire des APIs HTTP publiques comme Twitter ou des applications exposant une API HTTP comme CouchDB, au moyen d'un simple document JSON. Cette spécification peut être utilisée à partir d'implémentations spécifiques à chaque langage qui générera dynamiquement ou statiquement des objets client de haut niveau.

Abstract

SPORE

La spécification SPORE

Introduction

D'où vient cette spécification ? Qui en est le géniteur ? Quelles ont été les motivations à créer une spécification pour services REST et quels avantages peut-on en tirer au quotidien dès lors que l'on a à disposition une librairie implémentant cette spécification ?

Description d'un service

La description d'un service se fait au moyen d'un document JSON qui doit respecter la spécification SPORE. Avec cette dernière, nous sommes en mesure de décrire toute API exposée en HTTP au moyen de cette spécification.

Comment décrire une API REST ? Nous prendrons l'exemple de l'API Twitter pour exposer les grands principes de cette spécification.

Implémentation d'un client

Pour pouvoir utiliser cette spécification décrivant tout service REST, nous avons besoin d'un client SPORE capabale de générer dynamiquement ou statiquement des objets client de haut niveau. Comment implémenter un tel client SPORE ? Quelles doivent en être les fonctionnalités ? Nous reviendrons également sur le concept de middleware qui est au coeur de l'implémentation d'un tel client.

Conclusion

Quels langages implémentent déjà cette spécification ? Qu'en est-il de Python ?