Échange de données 1

Échange de données 1


3.2- Exercices

Laboratoire 2

4.1- REST

Développer un service web pour répondre aux besoins d'une page web existante et fournir des fonctionnalités complémentaires via un client en ligne de commande.

Taskor

Créer l'application serveur qui supporte les fonctionnalités de ce client web.

API

http
Affichage du client web
GET /

===

...Fichier taskor.html...
http
Liste des tâches
GET /tasks

=== Toutes les tâches, telles que dans le fichier

[
{ id: "...", name: "...", completed_at: null | "yyyy-mm-ddThh:mm:ss-0z:00" },
...
]
http
Créer une tâche, une tâche n'est PAS complétée par défaut
POST /new-task

{ name: "..." }

===

""

~~~ Si erreur de validation

"Message d'erreur"
http
Compléter ou non une tâche
POST /set-completed

{ id: "...", completed: true | false }

===

""

~~~ Si erreur de validation

"Message d'erreur"
http
Mettre à jour le nom
POST /update-name

{ id: ..., name: "..." }

===

""

~~~ Si erreur de validation

"Message d'erreur"
http
Supprimer une tâche
POST /remove-task

{ id: ... }

===

""

~~~ Si erreur de validation

"Message d'erreur"

Client

Le client offre une interface console minimale pour permettre de manipuler les données via les routes existantes.

http
GET /tasks?sort=...asc|desc...&name=...critère...&status=...pending|done...

===

[
...
]

~~~ Si erreur de validation

"Message d'erreur"

Exemple d'exécution

Paramètres vides: si les paramètres sont vides, ils ne sont pas envoyés
Taskor
------

Liste ou Ajout (L, A): L

Tri:
Recherche:
Status:

[ ] Nom A
[x] Nom B yyyy-mm-ddThh:mm:ss-0z:00
...
Validations
Taskor
------

Liste ou Ajout (L, A): L

Tri: patate
Recherche:
Status:

tri invalide, asc ou desc



Taskor
------

Liste ou Ajout (L, A): L

Tri: patate
Recherche:
Status: coucou

tri invalide, asc ou desc
status invalide, pending ou done
Paramètres
Taskor
------

Liste ou Ajout (L, A): L

Tri: desc
Recherche: ruby
Status: pending

...Seulement les tâches correspondantes...
Supplément, ex: Ajout
Taskor
------

Liste ou Ajout (L, A): A

Nom: Tâche C

Ajout réussis



Taskor
------

Liste ou Ajout (L, A): A

Nom:

Nom requis

Remise

Énoncé de travail sur LÉA

Échange de données 1

Nom:

Qualité de rédaction: Nomenclature, Formatage 0     -0.5     -1     -2
Qualité d'implémentation: ZIP, Syntaxe, Mécaniques 0     -0.5     -1     -2
Serveur
GET /, fichier html 1     0.5     0
GET /tasks, toutes les tâches, données complètes, données de test 2     1.5     1     0
Paramètres optionnels sort, name, status, réponse 2     1.5     1     0
POST /new-task, body json, validations, réponse, persistence 2     1.5     1     0
POST /set-completed, body json, validations, réponse, persistence 2     1.5     1     0
POST /update-name, body json, validations, réponse, persistence 2     1.5     1     0
POST /remove-task, body json, validations, réponse, persistence 2     1.5     1     0
Client
Menu liste, supplément 1     0.5     0
Liste saisie tri, recherche, status, affichage résultat 2     1.5     1     0
Requête Liste route, paramètres url optionnels 2     1.5     1     0
Supplément saisie, affichage résultat 2     1.5     1     0
Requête Supplément route, paramètres json 2     1.5     1     0
UI/UX cohérent 0     -0.5     -1