Consultation de l’API avec JS : fetch, await, async¶
Il nous reste à consulter cette API en JS. Nous pouvons utiliser jQuery, des composants Web ou plus directement :
fetch
await
async
:
Interrogation de l’API auteurs¶
Voici quelques méthodes JS pour dialoguer avec cette API.
//liste tous les auteurs de la base
async function getAuteurs(){
let rep = await fetch('http://localhost:8000//books/api/v1.0/auteur', { method: 'GET' });
let reponse = await rep.json();
return reponse;
}
//donne les détails d'un auteur par son id
async function auteurById(id){
let rep = await fetch('http://localhost:8000/books/api/v1.0/auteur/'+id, { method: 'GET' });
let reponse = await rep.json();
return reponse;
}
//supprime un auteur grâce à son id
async function auteurSupprime(id){
let rep = await fetch('http://localhost:8000/books/api/v1.0/auteur/',
{ method: 'DELETE', body: JSON.stringify({ "id": id })
});
let reponse = await rep.json();
return reponse;
}
Interrogation de l’API livres¶
// liste tous les livres
async function getLivres(){
let rep = await fetch('http://localhost:8000/books/api/v1.0/livres/', { method: 'GET' });
let reponse = await rep.json();
return reponse;
}
//donne les détails d'un livre par id
async function livreById(id){
let rep = await fetch('http://localhost:8000/books/api/v1.0/livres/'+id, { method: 'GET' });
let reponse = await rep.json();
return reponse;
}
//supprime un livre grâce à son id
async function livreSupprime(id){
let rep = await fetch('http://localhost:8000/books/api/v1.0/livre',
{ method: 'DELETE', body: JSON.stringify({ "id": id })
});
let reponse = await rep.json();
return reponse;
}
Il vous reste à compléter les méthodes POST
et PUT
pour ces 2 entités et à intégrer ce code dans un joli composant Front.