Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
September 18, 2022 12:06 pm GMT

Dvelopper une API Rest avec NodeJS, Express et MongoDB: 3 Les verbes HTTP

Les verbes HTTP... nous n'allons pas lire Rimbaud, calme-toi!
Une facon toute conne de dcrire ce qu'est un verbe serait de dire:

"Les verbes HTTP me servent donner des ordres mon serveur"

GET: donne moi un truc

C'est le seul qu'on a pu tester pour le moment, car la facon la plus simple de faire un GET est de lancer un navigateur et de taper une url quelconque, par contre si je veux mettre des paramtre, c'est cuit.

Rappel de la syntaxe du GET en ExpressJS:

app.get("/", (request, response) => {  response.statusCode = 200  response.send({ message: "Mon premier JSON!" })})

Halte! un outils important

Avant de pouvoir continuer, on va devoir installer un outils indispensable pour le bon dvelopeur d'API que je suis:
Postman

Le tour des lieux

Ca va etre assez simple, Postman permet de crer des requetes de tout types avec modification des en-tetes, parametres et tout le reste.

Image description

On connais dj la syntaxe:

app.get("/bonjour", (request, response) => {  response.send({ message: "Bonjou!" })})

On teste ca:
Postman est super simple et encore plus simple lorsqu'on utilise que l'URL. Je vais bientot commencer utiliser des Headers etc...
Image description

POST: cre un truc et que ca saute!

Cre moi ca

app.post("/champion", (request, response) => {  response.send({ message: "J'ai t'ai cr ton truc  (je mens)!" })})

On teste ca:

Image description

Si tu te souviens bien des autres routes que nous avions cr, j'avais une route GET /champions et pourtant il n'a pas confondu le POST /champions. Voil o rside la logique des verbes:

  1. Je garde le meme nom de resource /champions
  2. Je dcline en plusieurs verbes
  3. GET /champions: Donne moi tous les champions
  4. POST /champions: Cre moi un nouveau champion
  5. PUT /champions/1: Modifie le champion dont l'ID est 1 (on va voir les params aprs)
  6. GET /champions/1: Donne moi le champions dont l'ID est 1
  7. DELETE /champions/1: Supprime le champions dont l'ID est 1

PUT: modifie moi un truc

app.put("/champions/:id", (request, response) => {  response.send({    message: `J'ai modifi le chapmion ${request.params.id} (je mens)!`,  })})

On teste ca:

Image description

DELETE: j'ai chang d'avis, supprime-moi ca!

Normalement arriv ici, tu dois commencer voir l'ide et tu peux deviner la prochaine syntaxe ainsi que la requete:

app.delete("/champions/:id", (request, response) => {  response.send({    message: `J'ai supprim le chapmion ${request.params.id} (je mens)!`,  })})

On teste ca:

Image description

Si t'as bien suivi jusqu'ici, tu devrais te poser des question sur le comment je fais pour:

  • Crer un champion avec un nom, description, blabla
  • Mettre jour la description de ce champion

L on va passer vers une autre partie:

  • Le body
  • Les paramtres

Original Link: https://dev.to/sidali/developper-une-api-rest-avec-nodejs-express-et-mongodb-3-les-verbes-http-ko6

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To