Accueil·Messages d’erreur

chrome · JavaScript

Le message

TypeError: Failed to fetch

Ce que cela veut dire

La requête s'est terminée sans réponse, et le navigateur cache volontairement la raison : un blocage CORS, une adresse morte, un certificat invalide et une extension bloqueuse de publicité donnent exactement les deux mêmes mots. C'est une erreur levée et non un statut : un 404 ou un 500 n'arrive jamais jusqu'ici, le serveur n'a même pas commencé à répondre. Il y a souvent juste au-dessus, dans la console ou l'onglet Network, une seconde ligne plus précise : lisez-la d'abord. Appeler l'URL avec curl -i sépare « le serveur est à terre » de « le navigateur a refusé ». Firefox formule la même situation en NetworkError when attempting to fetch resource.

Le correctif

curl -i https://api.example.com/data
Émis par
chrome
JavaScript
15

Les erreurs du navigateur et de Node disent d'ordinaire ce qui a cassé et non pourquoi la valeur est devenue telle — vous avez lu undefined, ce n'était pas une fonction, ce n'était pas du JSON — l'endroit à corriger se trouve donc en amont de la ligne qui a levé l'erreur, et faire taire cette seule ligne avec ?. et des valeurs par défaut fait revenir le même problème plus loin, sous une forme plus difficile à reconnaître.

Lire un message d’erreur

  • Lisez à partir de la première ligne. Plus on descend, plus il s’agit des entrailles de l’outil ; la cause est généralement en haut.
  • S’il y a un fichier et un numéro de ligne, commencez là — pas la première image de la pile, mais la ligne la plus haute qui nomme un fichier de vous.
  • Cherchez le message tel quel, mais retirez d’abord vos chemins et vos noms de variables : c’est cela qui empêche la correspondance.
  • La même situation se formule autrement selon la version de l’outil. Si les résultats sonnent faux, ajoutez le numéro de version.
  • Avant de coller un correctif, vérifiez ce qu’il jette. Certains sont irréversibles.

Questions fréquentes

Q. Que veut dire « TypeError: Failed to fetch » ?

La requête s'est terminée sans réponse, et le navigateur cache volontairement la raison : un blocage CORS, une adresse morte, un certificat invalide et une extension bloqueuse de publicité donnent exactement les deux mêmes mots. C'est une erreur levée et non un statut : un 404 ou un 500 n'arrive jamais jusqu'ici, le serveur n'a même pas commencé à répondre. Il y a souvent juste au-dessus, dans la console ou l'onglet Network, une seconde ligne plus précise : lisez-la d'abord. Appeler l'URL avec curl -i sépare « le serveur est à terre » de « le navigateur a refusé ». Firefox formule la même situation en NetworkError when attempting to fetch resource.

Q. Comment le corriger ?

curl -i https://api.example.com/data — avant de le lancer, vérifiez plus haut ce que cette commande jette.

Q. Quel outil émet cela ?

chrome. Cela relève de JavaScript, et le message compte 4 mots.

Erreurs voisines