Swagger, language pour décrire des API REST

16
Swagger / JS Meetup 5 mars 2015 ©EPFL

Transcript of Swagger, language pour décrire des API REST

Page 1: Swagger, language pour décrire des API REST

Swagger / JS Meetup 5 mars 2015

Alway’s be watching!

©EP

FL

Page 2: Swagger, language pour décrire des API REST

Qui êtes vous ?

→ Qui crée des APIs ?→ Qui consomme des API→ Combien d’API avez vous utilisées

aujourd’hui ?

Page 3: Swagger, language pour décrire des API REST

Pierre-André Vullioud

watchful.li CTO

Owner of inetis.ch

Joomla enthusiast

@pavullioud

Page 4: Swagger, language pour décrire des API REST

APIs in 2015

source : www.programmableweb.com/api-research

Page 5: Swagger, language pour décrire des API REST

Amazon

→ All teams will expose their data and functionality through API.

→ There will be no other form of interprocess communication [..]

→ Anyone who doesn't do this will be fired.

Amazon policy set by Jeff Bezos in 2003

http://apievangelist.com/2012/01/12/the-secret-to-amazons-success-internal-apis/

Page 6: Swagger, language pour décrire des API REST

API centric architecture

→ Internal use→ Apps→ Clients→ Partners

Data

API

Functionality

app

partnersservices

Page 7: Swagger, language pour décrire des API REST

Swagger

Language pour décrire des API REST

http://swagger.io/

Page 8: Swagger, language pour décrire des API REST

Description de votre API

JSON

Technologie agnostique

Accélère le développement

Page 10: Swagger, language pour décrire des API REST

SDK Generator

https://github.com/swagger-api/swagger-codegen

Page 11: Swagger, language pour décrire des API REST

Javascript

Javascript Class

https://github.com/wcandillon/swagger-js-codegen

Générer dynamiquement un client en Javascript

https://github.com/swagger-api/swagger-js

Page 12: Swagger, language pour décrire des API REST

Client dynamique

var swagger = new client.SwaggerClient({

url: 'http://petstore.swagger.wordnik.com/v2/swagger.json',

success: function() {

swagger.apis.pet.getPetById({petId:1});

}

});

Page 13: Swagger, language pour décrire des API REST

Editeur

http://editor.swagger.io/#/

Page 14: Swagger, language pour décrire des API REST

Générer le code

→ avec l’éditeur→ parser le code source

Page 15: Swagger, language pour décrire des API REST

Exemple PHP

https://github.com/zircote/swagger-php/

Page 16: Swagger, language pour décrire des API REST

Questions ?