web-dev-qa-db-fra.com

http: // localhost/undefined 404 (introuvable)

Je n'étais pas clair dans la description de mon problème. Laisse-moi réessayer.

NB Il s'agit d'un problème commun à mes sites de production, de mise en scène et de développement (et pas seulement à mon site de développement, comme semblent le penser les commentateurs).

NB Ce problème se produit avec Chrome et non avec Firefox.

Le problème se produit à la page d'accueil du site: http://www.example.com (ou avec "/index.php ajouté"). La page s'est chargée avec succès, mais le panneau de la console des outils de développement de Chrome affiche une erreur 404. Le message indique "GET http: //www.example/undefined 404 (Introuvable)". Il indique toujours que l'erreur se produit à "(index): 1", qui est la ligne DOCTYPE. Quoi que ce soit qui génère le problème, ce n'est pas ça.

La page se charge bien, je viens de recevoir cet étrange message dans la console des outils de développement. (Je n'étais probablement pas clair à ce sujet dans la description originale du problème.) La console de Firfox ne montre aucune erreur de ce type.

Je veux localiser ce qui génère cette erreur. En particulier, j'aimerais savoir où Chrome obtient l'URL "non définie". Mon hypothèse (mais seulement une hypothèse) est que l'un de mes nombreux fichiers Javascript génère une URL à partir d'une variable non définie. L'emplacement du problème de Chrome, "(index): 1", est incorrect. J'apprécierais toutes les idées sur la manière d'obtenir un message d'erreur plus utile de Chrome: le nom du fichier où l'URL a été trouvée serait utile. Si je pouvais le faire sans avoir défini des points d'arrêt dans tous mes fichiers Javascript, ce serait particulièrement agréable. :-)

La question d'origine avec l'URL supprimée (le nombre de liens autorisés avec une réputation <10) est limitée. Vous ne voudrez peut-être pas le lire car les gens en ont été déroutés.

Nous avons un site web assez complexe Drupal. Lorsque vous accédez à la page d'accueil, La console Chrome (version 45.0.2454.85 m) m'indique une erreur: "[URL Supprimée] 404 (Introuvable) (index): 1". (J'utilise le site de développement Sur mon ordinateur local car la minification y est désactivée.)
Très bien, je pense, je sais quoi faire à ce sujet: allez trouver le point délictueux Dans un fichier quelconque, grattez-moi la tête plusieurs fois, obtenez une brillante idée de , Et résoudre le problème. Une petite difficulté: le problème est certainement not se produisant à la ligne 1 de l’indice (ce que je suppose est ce que "(Index): 1" signifie). Le message d'erreur "non défini" suggère, mais Ne prouve pas que le délinquant est l'un de nos quelque 12 fichiers JavaScript . Vraisemblablement, une variable quelque part n’est pas définie. Alors, comment faire en sorte que Chrome identifie le lieu de l'infraction ? Cela ne me donne aucune erreur JavaScript indéfinie, , Mais un 404 sur [URL supprimée]/undefined. Merci d'avance pour toutes les idées .

Edit: J'ai oublié d'ajouter que Firefox ne montre pas une telle erreur.

6
user3250335

J'ai trouvé d'où ce problème pourrait apparaître.

  1. Assurez-vous que tous les styles CSS (styles) générés qui définissent une image de fond ou similaire, là où il y a un url (), pointent quelque part; si cela ne pointe nulle part, l'erreur sera définie sur DOCTYPE .html.
  2. Vérifiez le src de vos balises d'image; assurez-vous qu'ils ne sont pas définis par JavaScript sur non définis.
  3. Vérifiez également la source de vos fichiers de script, même si cela serait beaucoup plus rare dans ce cas.

Donc, oui, il est affreux de ne pas savoir où se trouve l’erreur réelle, mais bien d’être avec une ressource de recherche qu’elle ne peut pas trouver; nous ne voulons probablement même pas qu'il recherche. Par exemple. lorsque l'élément est invisible et que nous ne définissons aucune image; mais nous passons encore indéfini, nous rechercherons indéfini et cela ne vous donnera aucune indication sur la partie de l’arbre où se trouve l’erreur.

Puisque votre page est trop complexe pour savoir où elle se trouve, ou si c'est même le problème auquel vous êtes confronté; c'est le maximum que je puisse dire; la seule raison pour laquelle j'ai pu le trouver trop rapidement était dû à la réaction de dev, qui m'a immédiatement expliqué mes propriétés de rendu et le fait que le composant était assez petit.

10
Onza

Une autre façon de trouver la cause de ce problème (lorsque vous disposez d'une solution de taille décente) consiste à vérifier si des attributs/styles HTML non attribués sont définis. Nous pouvons vérifier cela en cliquant avec le bouton droit de la souris sur la balise body, Expand récursivement, copiez le code HTML, collez-le et recherchez undefined.

Si indéfini est affecté à href/src/url, etc., cela peut vous donner un indice sur ce qui ne va pas.

Cela peut être corrigé en n'affectant pas undefined à ces attributs.

1
Vamsi Vempati

les images ne se chargent pas correctement pour l'emplacement de l'image dynamique React Redux,

J'ai eu l'erreur

Error: http://localhost/undefined 404 (Not Found)

alors j'ai essayé ci-dessous le code de son travail 

{
 user.id &&
 <img className="img-responsive" src={`${API_URL}/${imageLocation}`} />
}

Alors, quand obtenir des données dynamiques après le rendu de nouvelles données imagelocation api url.

0
Senthil