API REST 
Le module Services de Drupal 
Julien Verhaeghe - NWX Drupal Meetup #3 - 17/09/14
2 / 14 
Responsable Technique 
Développeur Back-End chez Arcange le Groupe depuis 2008 
@vulienjerhaeghe github.com/munvier 
Julien 
Verhaeghe
3 / 14 
Serveur 
Desktop 
État des lieux 
Les Internets avant...
4 / 14 
Serveur 
Desktop 
Périphériques 
mobiles 
Serveur 
État des lieux 
...et maintenant.
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
6 / 14 
Les verbes utilisés par REST : 
- OPTIONS 
- HEAD 
- GET 
- POST 
- PUT 
- DELETE 
Le premier jour du REST de ta vie
7 / 14 
Services (Chaos tools, Libraries) 
Services views (views) 
Mise en place sur Drupal 7
8 / 14 
Services (Chaos tools, Libraries) 
Services views (views) 
CORS 
Mise en place sur Drupal 7
9 / 14 
drush en admin_menu ctools 
libraries views services 
cors services_views -y 
Commande Drush 
Mise en place sur Drupal 7
10 / 14 
- Création d’un Endpoint 
- Configuration des ressources 
- Création des vues 
- Tests 
Mise en place sur Drupal 7
11 / 14 
Tests de l’api 
Firefox (add-on) 
- REST Client 
- Poster 
Chrome (app) 
- REST Console 
Mise en place sur Drupal 7
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
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...
14 / 14 
https://github.com/munvier/Test-Services-App 
Annexe

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

  • 1.
    API REST Lemodule Services de Drupal Julien Verhaeghe - NWX Drupal Meetup #3 - 17/09/14
  • 2.
    2 / 14 Responsable Technique Développeur Back-End chez Arcange le Groupe depuis 2008 @vulienjerhaeghe github.com/munvier Julien Verhaeghe
  • 3.
    3 / 14 Serveur Desktop État des lieux Les Internets avant...
  • 4.
    4 / 14 Serveur Desktop Périphériques mobiles Serveur État des lieux ...et maintenant.
  • 5.
    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
  • 6.
    6 / 14 Les verbes utilisés par REST : - OPTIONS - HEAD - GET - POST - PUT - DELETE Le premier jour du REST de ta vie
  • 7.
    7 / 14 Services (Chaos tools, Libraries) Services views (views) Mise en place sur Drupal 7
  • 8.
    8 / 14 Services (Chaos tools, Libraries) Services views (views) CORS Mise en place sur Drupal 7
  • 9.
    9 / 14 drush en admin_menu ctools libraries views services cors services_views -y Commande Drush Mise en place sur Drupal 7
  • 10.
    10 / 14 - Création d’un Endpoint - Configuration des ressources - Création des vues - Tests Mise en place sur Drupal 7
  • 11.
    11 / 14 Tests de l’api Firefox (add-on) - REST Client - Poster Chrome (app) - REST Console Mise en place sur Drupal 7
  • 12.
    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
  • 13.
    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...
  • 14.
    14 / 14 https://github.com/munvier/Test-Services-App Annexe