14
API REST Le module Services de Drupal Julien Verhaeghe - NWX Drupal Meetup #3 - 17/09/14

Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

Embed Size (px)

DESCRIPTION

Cette présentation a pour but d'étendre les fonctionnalités de Drupal en utilisant un site comme un API pouvant servir à des applications mobiles, des sites partenaires au travers du module Services. Nous verrons comment nous pouvons récupérer notre contenu et l'exploiter au travers d'un exemple avec AngularJS.

Citation preview

Page 1: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

API RESTLe module Services de Drupal

Julien Verhaeghe - NWX Drupal Meetup #3 - 17/09/14

Page 2: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

2 / 14

Responsable Technique Développeur Back-End chez Arcange le Groupe depuis 2008

@vulienjerhaeghe github.com/munvier

JulienVerhaeghe

Page 3: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

3 / 14

Serveur

Desktop

État des lieuxLes Internets avant...

Page 4: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

4 / 14

Serveur

DesktopPériphériques

mobiles

Serveur

État des lieux...et maintenant.

Page 5: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

5 / 14

R.E.S.T. : REpresentational State Transfer

- Style d’architecture qui repose sur le procotole HTTP

- Met à disposition des ressources

- URI : identifiant de la ressource (Unique Ressource Identitifer)

- Ressource manipulée par sa représentation

- Accessible via un Endpoint

Le premier jour du REST de ta vie

Page 6: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

6 / 14

Les verbes utilisés par REST :

- OPTIONS

- HEAD

- GET

- POST

- PUT

- DELETE

Le premier jour du REST de ta vie

Page 7: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

7 / 14

Services (Chaos tools, Libraries)

Services views (views)

Mise en place sur Drupal 7

Page 8: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

8 / 14

Services (Chaos tools, Libraries)

Services views (views)

CORS

Mise en place sur Drupal 7

Page 9: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

9 / 14

drush en admin_menu ctools

libraries views services

cors services_views -y

Commande Drush

Mise en place sur Drupal 7

Page 10: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

10 / 14

- Création d’un Endpoint

- Configuration des ressources

- Création des vues

- Tests

Mise en place sur Drupal 7

Page 11: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

11 / 14

Tests de l’api

Firefox (add-on)

- REST Client

- Poster

Chrome (app)

- REST Console

Mise en place sur Drupal 7

Page 12: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

12 / 14

npm install -g yo

Yeoman

npm install -g generator-angular

Générateur AngularJS

yo angular

AngularJS

Node.js

http://www.nodejs.org/

Création de l’app côté client

Page 13: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

13 / 14

Sécurisation de l’app (permissions, token, ...)

Création de contenu via Services (POST)

Modification de contenu (PUT)

Suppression de contenu (DELETE)

Pour aller plus loin...

Page 14: Julien Verhaeghe - API REST : Le module Services de Drupal - Drupal Meetup Rouen #3

14 / 14

https://github.com/munvier/Test-Services-App

Annexe