J'ai écrit une fonction asynchrone JavaScript pour utiliser une API que j'ai trouvée pour vérifier l'orthographe :
async function checkWord(word) { var myHeaders = new Headers(); myHeaders.append("apikey", "My api key"); var requestOptions = { method: 'GET', redirect: 'follow', headers: myHeaders }; fetch(`https://api.apilayer.com/spell/spellchecker?q=${word}`, requestOptions) .then(response => response.text()) .then(result => console.log(result)) .catch(error => console.log('error', error)); }
Le mot unique à vérifier est passé en paramètre de chaîne, par exemple :
let checkResult = checkWord('HOUSE'); console.log(checkResult);
Je veux réécrire cette ligne :
.then(result => console.log(result))
Renvoyer le résultat à l'appelant sous forme d'objet JSON, mais je ne sais pas comment faire cela. Voici ce que j'ai essayé :
.then(result => () => {return result.json();})
Quelqu'un peut-il suggérer une solution pour que cela fonctionne comme je le souhaite ? Je sais que le code d'origine fonctionne car le console.log d'origine affiche des résultats valides. Mais le console.log après mon appel de fonction n'affiche que ce qui suit :
Renvoyez votre promesse de la fonction et supprimez
async
comme ceci :