ecoledirecte-api-docs
ecoledirecte-api-docs copied to clipboard
250 QCM
I would like to know how I can modify my code so that it displays the QCM and allows me to respond. Thank you in advance.
`
Chargement...
<script>
document.addEventListener("DOMContentLoaded", function() { const statusElement = document.getElementById("status");
const credentials = {
identifiant: "",
motdepasse: "",
isRelogin: false,
uuid: ""
};
const requestData = {
method: "POST",
headers: {
"Content-Type": "application/x-www-form-urlencoded",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36"
},
body: `data=${encodeURIComponent(JSON.stringify(credentials))}`
};
fetch("https://api.ecoledirecte.com/v3/login.awp", requestData)
.then(response => response.json())
.then(data => {
if (data.code === 200) {
statusElement.textContent = "Connexion réussie à l'API !";
statusElement.classList.add("success");
} else if (data.code === 250) {
statusElement.textContent = "Code de réponse de l'API : 250";
statusElement.classList.add("success");
} else {
statusElement.textContent = `Échec de la connexion : ${data.message || "Erreur inconnue"}`;
statusElement.classList.add("error");
}
})
.catch(error => {
console.error("Erreur lors de la requête :", error);
statusElement.textContent = "Échec de la connexion : erreur réseau ou serveur.";
statusElement.classList.add("error");
});
});
</script>
`
When the script reaches the point where it detects data.code === 250 fetch the qcm endpoint and create a form on the page with all responses decoded from base 64.
In .then(serverResponse) callback function after fetch :
let question = serverResponse.data.question;
let reponses = [];
serverResponse.data.propositions.forEach(proposition => {
reponses.push(atob(proposition))
})
//Create a <form> element with all datas