Examen du niveau 4 — durci

Examen — questions inédites

4.1 · Rappel

1. Dans une API REST, qui porte l'action (créer, lire, supprimer) ?

URL = ressource au pluriel ; l'action vient de la méthode HTTP.
4.2 · Rappel

2. Comment stocker correctement un mot de passe utilisateur ?

On compare à la connexion sans jamais déchiffrer ; jamais de maison.
4.3 · Rappel

3. Que permet un WebSocket par rapport à HTTP classique ?

Connexion ouverte en continu, messages dans les deux sens.
4.1 · Application

4. Salim crée un produit via POST /api/v1/produits. Quels codes attend le front ?

201 après création, 400 si invalide, 404 si ressource absente.
4.1 · Application

5. L'API de Salim grossit : où placer la logique de création d'un produit ?

Routes (URL) → contrôleurs (logique) → modèles (données).
4.2 · Application

6. Une requête arrive sans jeton sur /mon-compte (route protégée de Salim). Réponse ?

401 = non authentifié ; 403 = authentifié mais pas le droit.
4.3 · Application

7. Salim veut un chat par boutique. Comment isoler les conversations ?

Rooms : qui rejoint quoi, diffusion au bon périmètre.
4.4 · Application

8. Un client envoie { prix: -5 } sans nom à l'API de Salim. Que faire ?

Valider avant de traiter ; 400 clair, jamais de fuite sensible.
4.4 · Application

9. Où placer le middleware de gestion d'erreurs Express de Salim ?

Centralisé en dernier : un seul format d'erreur pour toute l'API.
4.2 · Arbitrage

10. Salim découvre son secret JWT écrit en dur dans un commit poussé sur Git. Premier réflexe ?

Secret hors du code et hors Git ; rotation immédiate après exposition.
4.3 · Arbitrage

11. 40 vendeurs pollent l'API « du nouveau ? » chaque seconde et le serveur sature. Arbitrage de Salim ?

Pousser via connexion ouverte au lieu de redemander en boucle.
4.4 · Arbitrage

12. À la veille d'une livraison, Salim hésite à écrire des tests (« ça marche déjà »). Que décider ?

Non-régression : la suite verte avant chaque merge libère les évolutions.
Et après ?
Retour au guideSommaire du guide