@ianmuchina
Posted
Hello.
One solution is to get an advice slip using it's id.
eg: Get advice 100 by going to https://api.adviceslip.com/advice/100
Currently, the valid ids are those between 1 and 224.
You can then generate a random number between 1 & 224 on the client side each time the button is clicked.
Here's an example with fetch
async function fetchRoll() {
id = Math.floor(Math.random() * 224);
// Get Remote Data
let response = await fetch(`https://api.adviceslip.com/advice/${id}`);
let data = await response.json();
// Update DOM
adviceId.innerText = data.slip.id;
adviceText.innerText = data.slip.advice;
}
// When dice button is clicked
dice.onclick = fetchRoll;
@melwynt
Posted
@ianmuchina thanks for the feedback 🙌 The only issue I found about that one is if there is a new advice added. There was another solution to provide specific settings into Axios headers (no-cache) but it didn't work for me.