Gatsby: Ressources manquantes pour /

Créé le 3 févr. 2019  ·  112Commentaires  ·  Source: gatsbyjs/gatsby

Sommaire

Périodiquement, sur mon site de production, je vois l'erreur suivante;

Error: Missing resources for /
  at render(./.cache/ensure-resources.js:133:17)
  at Sg(./node_modules/react-dom/cjs/react-dom.production.min.js:169:129)
  at Hh(./node_modules/react-dom/cjs/react-dom.production.min.js:214:16)
  at Ih(./node_modules/react-dom/cjs/react-dom.production.min.js:215:274)
  at ji(./node_modules/react-dom/cjs/react-dom.production.min.js:230:233)
  at ki(./node_modules/react-dom/cjs/react-dom.production.min.js:229:143)
  at Fh(./node_modules/react-dom/cjs/react-dom.production.min.js:226:196)
  at bg(./node_modules/react-dom/cjs/react-dom.production.min.js:224:28)
  at qi(./node_modules/react-dom/cjs/react-dom.production.min.js:243:14)
  at render(./node_modules/react-dom/cjs/react-dom.production.min.js:251:109)
  at oi(./node_modules/react-dom/cjs/react-dom.production.min.js:254:364)
  at Ai(./node_modules/react-dom/cjs/react-dom.production.min.js:254:350)
  at apply(./.cache/production-app.js:114:7)
  at r(./node_modules/@sentry/browser/dist/index.js:3114:1)

Il semble que parfois cela empêche le site de s'afficher du tout et affiche simplement une page vierge.

Les informations pertinentes

Vous pouvez voir la trace sur Sentry ici

Environnement (le cas échéant)

C'est l'environnement sur lequel le site est construit;

  System:
    OS: macOS High Sierra 10.13.2
    CPU: x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz
    Shell: 5.3 - /bin/zsh
  Binaries:
    Node: 8.11.1 - ~/.nvm/versions/node/v8.11.1/bin/node
    Yarn: 1.9.4 - ~/.nvm/versions/node/v8.11.1/bin/yarn
    npm: 6.4.1 - ~/.nvm/versions/node/v8.11.1/bin/npm
  Browsers:
    Chrome: 71.0.3578.98
    Safari: 11.0.2
  npmPackages:
    gatsby: ^2.0.19 => 2.0.72
    gatsby-image: ^2.0.15 => 2.0.20
    gatsby-plugin-create-client-paths: ^2.0.2 => 2.0.2
    gatsby-plugin-google-gtag: ^1.0.8 => 1.0.8
    gatsby-plugin-manifest: ^2.0.5 => 2.0.10
    gatsby-plugin-offline: ^2.0.11 => 2.0.17
    gatsby-plugin-page-transitions: ^1.0.7 => 1.0.7
    gatsby-plugin-react-helmet: ^3.0.0 => 3.0.2
    gatsby-plugin-sharp: ^2.0.18 => 2.0.18
    gatsby-plugin-stripe-elements: ^1.0.9 => 1.0.9
    gatsby-plugin-twitter: ^2.0.8 => 2.0.8
    gatsby-source-filesystem: ^2.0.4 => 2.0.12
    gatsby-transformer-sharp: ^2.1.12 => 2.1.12
  npmGlobalPackages:
    gatsby-cli: 2.0.0-rc.1
    gatsby-plugin-countly: 0.2.0

Aucune idée par où commencer pour déboguer ceci donc toute aide est appréciée!

needs reproduction question or discussion

Commentaire le plus utile

@wardpeet travaille sur des tests pour simuler des problèmes de réseau mais nous devrions avoir cela dans les prochaines 24 heures.

Tous les 112 commentaires

Peut-être, bien qu'il n'y ait pas de truc 404 impliqué ici.

Désolé que vous voyez ça, @Jivings

Pourriez-vous s'il vous plaît un lien vers une reproduction minimale si possible?

Je n'ai pas pu reproduire localement 🙁 Y a-t-il d'autres informations que je peux vous obtenir, ou le rapport de sentinelle aide-t-il du tout? Dans quelles circonstances cela pourrait-il se produire afin que je puisse être en mesure de le réduire?

Je vois également cela mais seulement après le déploiement, je ne peux pas reproduire localement.

Uncaught Error: Missing resources for /store/
    at t.n.render (ensure-resources.js:135)
    at Xo (react-dom.production.min.js:156)
    at Qo (react-dom.production.min.js:155)
    at ti (react-dom.production.min.js:162)
    at Oi (react-dom.production.min.js:192)
    at ji (react-dom.production.min.js:193)
    at fa (react-dom.production.min.js:205)
    at sa (react-dom.production.min.js:204)
    at Mi (react-dom.production.min.js:200)
    at ya (react-dom.production.min.js:218)

J'ai cependant remarqué que je n'obtiens cette erreur que sur une branche où j'ai essayé de supprimer ThemeProvider (styled-components) de mon code et je suppose que quelque part les choses se sont gâchées dans la structure du fichier car aucun package n'a été ajouté / mis à jour / supprimé. Mettra à jour si j'identifie la cause, mais il n'y a pas grand-chose à faire.

J'ai le même problème ici ... d'abord, désolé pour mon anglais, je parle espagnol ¯_ (ツ) _ / ¯

Error: Missing resources for /...
    at t.n.render (ensure-resources.js:135)
    at Ri (react-dom.production.min.js:169)
    at Ci (react-dom.production.min.js:168)
    at Li (react-dom.production.min.js:176)
    at Ba (react-dom.production.min.js:221)
    at Ha (react-dom.production.min.js:222)
    at Pl (react-dom.production.min.js:238)
    at Tl (react-dom.production.min.js:237)
    at wl (react-dom.production.min.js:234)
    at Qa (react-dom.production.min.js:232)

Tout d'abord, un peu de contexte, j'ai eu un problème lié à un package de carrousel Tiny Slider qui utilisait window , donc je recherche différents carrousels avec SSR implémenté et j'ai trouvé react-responsive-carousel . Je travaille très bien avec ce dont j'avais besoin, mais uniquement en develop .

L'erreur mentionnée se produit dans deux scénarios connexes:

Scénario 1
J'utilise des composants stylisés pour styliser ma diapositive, mais l'ajout de mixins a cassé mes builds. J'ai trouvé que l'ajout de gatsby-plugin-styled-components résolu le problème; et ça marche, mais ... le scénario 2 s'est produit

Scénario 2
Maintenant, ma version fonctionne et je peux voir ma page avec des styles. Mais, mon carrousel ne fonctionne pas, il ne fait rien !!! 😱 ... Les styles sont superbes cependant ... 😅
Donc je viens de supprimer le gatsby-plugin-styled-components et le script a fonctionné à nouveau, mais pas mes styles 🙃

J'espère que cela donne quelques indices pour trouver et résoudre le problème

Salut les gars.

Je ne sais pas si cela aide mais j'ai eu un problème similaire, il s'avère que ma ressource manquante était une variable d'environnement manquante (de production) pour Firebase. Cela semblait à son tour affecter mes images - cela a dû avoir un impact sur une étape de construction

Peut fournir plus d'informations si nécessaire ...

@Jivings pouvez-vous mettre à jour les packages gatsby et gatsby-plugin-offline? cela se produit lorsque vous créez une nouvelle construction mais que les ressources de la précédente ne sont plus disponibles (le html mis en cache par le plugin hors ligne essaie d'utiliser des ressources non disponibles). Dans les versions plus récentes des packages gatsby / hors ligne, nous avons ajouté le rechargement après les mises à jour du service worker pour ne pas laisser le site dans un état inutilisable

Dans mon cas, j'ai changé une importation de import { Link } from './' à import { Link } from './Link' (dans mon fichier /components/footer.js ), et cela a corrigé l'erreur "Ressources manquantes pour /". C'était une dépendance circulaire je suppose. Mais je ne sais pas si ça va réparer le vôtre
Edit: Si l'erreur se produit périodiquement, je pense que la solution de @pieh ci-dessus a de meilleures chances de la corriger.

J'obtiens ces erreurs mais uniquement dans IE11. Je ne sais pas exactement quelles ressources échouent car cela ne se produit que dans un navigateur, pour autant que je sache, mais je vois des erreurs dans react-dom (voir les captures d'écran ci-dessous). J'ai mis à jour toutes mes dépendances Gatsby avec leurs dernières versions et ajouté un polyfill au cas où il s'étoufferait avec Symbol ou quelque chose de trop moderne, mais les erreurs se produisent toujours. J'ai également des problèmes de chargement d'image dans IE11, je pense que c'est comme ce qui est discuté dans # 4021. Si je supprime toutes les images et le plugin hors ligne, je n'obtiens aucune erreur lors du chargement de la page, mais je le fais lorsque je navigue vers d'autres pages, même si elles ne contiennent pas d'images. Il semble que certains JS ne parviennent pas à se charger et IE présente probablement la page HTML 404 à la place. Il se passe donc définitivement quelque chose de bizarre ici.

Je travaille depuis ma branche de développement déployée sur Netlify pour tester des correctifs sur divers appareils.
Voici la dernière version de débogage si vous souhaitez la tester: https://5c6ee3b943e6c400080a5a8b--marcysutton.netlify.com/about/
Voici mon site en direct, qui a définitivement toutes les ruptures dans IE11: https://marcysutton.com
Et voici la source de mon site: https://github.com/marcysutton/gatsby-site

Voici quelques captures d'écran de ma VM:

stack trace
script errors in console
react-dom looks related

@marcysutton Avez-vous fait des progrès dans ce domaine? Je vois la même chose dans IE11 uniquement. Aucun problème dans les autres navigateurs.

Pas encore! @sidharthachatterjee ou @pieh , est-ce assez d'informations pour déboguer? Joli problème de blocage dans IE11 pour le moment.

@Undistraction J'ai une bonne nouvelle: l'équipe m'a aidé à déboguer ce problème, et ils ont souligné qu'IE11 avait des problèmes avec les fonctions fléchées non compilées dans un plugin ( gatsby-background-image ). Ils discutent des changements apportés au noyau de Gatsby pour en tenir compte, mais en attendant, vous devriez pouvoir le contourner en compilant tous les plugins qui causent des problèmes: https://www.gatsbyjs.org/packages/gatsby-plugin- compile-es6-packages /? = compile

Voici où je l'ai utilisé sur mon site: https://github.com/marcysutton/gatsby-site/blob/develop/gatsby-config.js#L107

Faites-nous savoir si vous rencontrez encore des problèmes!

Même problème ici, voir cela périodiquement sur des sites Web que je n'ai pas visités depuis quelques jours (le site Web de Gatsby également). Pas sur IE11 mais sur Chrome. Après quelques secondes de page vierge, il y a une actualisation après quoi tout fonctionne à nouveau.

Versions d'un exemple:
gatsby : 2.0.118
gatsby-plugin-offline : 2.0.23

J'obtiens cette erreur dans IE (mode bord).

Il pointe vers le fichier react-dom.production.min.js de la ligne 1 char 195183.

en cliquant sur l'erreur dans IE, il pointe vers ce code:

if(pi)throw a=qi,qi=null,pi=!1,a;}

@marcysutton Merci pour la mise à jour. Je n'avais pas repéré cette erreur de syntaxe dans votre console. Pour nous, nous n'avons aucune erreur. La navigation de page est complètement interrompue dans IE11 et la page ne s'hydrate pas. Lors d'une actualisation de page, nous obtenons l'erreur de ressources manquantes. Nous avons dû abandonner le support IE11 car il n'y a rien à faire. Aucun problème avec un autre navigateur. Mon intuition est qu'il s'agit d'un problème de polyfill, mais que l'erreur est avalée quelque part, mais ce n'est qu'une supposition. Je ne comprends pas comment l'hydratation de la page peut planter sans aucune erreur dans la console.

J'obtiens cette erreur lors du (1er) chargement. Semble effacer après le rechargement. Hébergement Production / Firebase.
Error: Missing resources for /

@rkhayat pourriez-vous reproduction ?

Merci!

FWIW J'ai écrit mon expérience avec ce problème sur https://github.com/gatsbyjs/gatsby/issues/12399 Cela pourrait être utile à quiconque rencontre l'erreur Missing resources for / .

J'avais ce qui semble être un problème similaire: on pouvait bien naviguer sur le site, mais sur n'importe quelle page, s'ils faisaient une actualisation, la page serait vide et je verrais Error: Missing resources for /<path> . Une actualisation matérielle ou un effacement du cache rechargerait la page, mais encore une fois, les actualisations normales afficheraient une page vierge.

Ne pouvant pas reproduire cela localement avec gatsby server , je soupçonnais qu'il s'agissait d'un problème de CDN, j'ai donc invalidé le répertoire racine de ma distribution CloudFront qui semble avoir résolu ce problème pour moi. Je ne sais toujours pas exactement ce qui se passait, mais je soupçonne que certaines références sont obsolètes. J'espère que ceci aide quelqu'un d'autre.

Hiya!

Ce problème est devenu silencieux. Silencieux effrayant. 👻

Nous recevons beaucoup de problèmes, donc nous clôturons actuellement les problèmes après 30 jours d'inactivité. Cela fait au moins 20 jours depuis la dernière mise à jour ici.

Si nous avons manqué ce problème ou si vous souhaitez le garder ouvert, veuillez répondre ici. Vous pouvez également ajouter l'étiquette «non périmé» pour garder ce problème ouvert!

Merci de faire partie de la communauté Gatsby! 💪💜

@ gatsbyjs-read-only-user Non périmé 😬

@Undistraction J'ai une bonne nouvelle: l'équipe m'a aidé à déboguer ce problème, et ils ont souligné qu'IE11 avait des problèmes avec les fonctions fléchées non compilées dans un plugin ( gatsby-background-image ). Ils discutent des changements apportés au noyau de Gatsby pour en tenir compte, mais en attendant, vous devriez pouvoir le contourner en compilant tous les plugins qui causent des problèmes: https://www.gatsbyjs.org/packages/gatsby-plugin- compile-es6-packages /? = compile

Voici où je l'ai utilisé sur mon site: https://github.com/marcysutton/gatsby-site/blob/develop/gatsby-config.js#L107

Faites-nous savoir si vous rencontrez encore des problèmes!

@marcysutton Comment avez-vous identifié les plugins / modules contenant des fonctions fléchées non compilées?

@onetwothreebutter ouvre le (s) fichier (s) JavaScript compilé (s) dans le navigateur et recherche => . IE ne permettait pas de dire facilement d'où ils venaient, alors j'ai juste cherché manuellement avec "Ctrl + F"

Cela devrait s'améliorer dans le noyau au fil du temps, mais c'est ainsi que vous pouvez vérifier en attendant!

Je voudrais ajouter que ce problème persiste pour nous dans tous les navigateurs et toutes les versions, ce n'est pas seulement IE, et semble être déclenché en utilisant un Service Worker dans Gatsby. Connexes: # 12399

J'ai également été confronté au même problème.

  • Si le service worker est activé, l'actualisation des pages provoque les erreurs mentionnées ci-dessus. Ce problème apparaissait principalement sur Chrome. Le navigateur Edge semble fonctionner correctement (probablement parce que le service worker n'entre pas en jeu là-bas)
  • En supprimant le service worker et en utilisant le plugin gatsby-plugin-remove-serviceworker ce problème disparaît
    Résolution utilisée:
  • Cependant, étant donné l'importance de faire essayer au serveur fonctionnel le plugin gatsby-plugin-remove-trailing-slashes en combinaison avec le plugin PWA gatsby-plugin-offline et cela semble résoudre le problème pour moi.

J'ai cette erreur et je n'utilise pas de service worker.
Je pensais que cela se produirait peut-être si la page se charge avec une certaine version du site, puis qu'un déploiement est effectué et que les noms des actifs changent de sorte qu'ils ne puissent pas être trouvés par la version ouverte?
En outre, la version à l'origine de l'erreur dans Sentry n'est pas la version qui était en ligne au moment de l'erreur.

@antoinerousseau Oui, après quelques tentatives pour essayer de le réparer, nous l'avons toujours même sans le SW. Nous avons mis à niveau quelques plugins Gatsby vers des versions récentes et cela a réduit le nombre d'erreurs, mais pas à 0 (cela pourrait bien être une coïncidence)

@KyleAMathews Avez-vous vu ceci ou avez-vous des informations?

@jackhair il est difficile de dire ce qui se passe sans reproduction. http://gatsby.dev/reproduction

Solution de contournement: https://github.com/gatsbyjs/gatsby/issues/13410#issuecomment -486306784

@smakosh Je n'utilise pas de service workers.

Le plugin hors ligne l'utilise

Ok, mais ce que je veux dire, c'est que le bogue se produit même sans ce plugin.

Pouvez-vous vérifier que vous avez désenregistré le logiciel avec succès, car vous l'avez peut-être déjà utilisé, essayez également de vider votre cache Gatsby en supprimant les dossiers public et .cache

Je n'ai jamais utilisé de logiciel sur ce projet. (et juste vérifié au cas où)
public et .cache sont toujours recréés par Netlify.
Des erreurs sont signalées dans la production par Sentry.
https://sentry.io/share/issue/738b234836814442b7702866c6814fdf/

Votre projet est-il open source? si oui, pouvez-vous créer un lien ci-dessous, j'aimerais le vérifier et voir comment je peux résoudre ce problème

Désolé ce n'est pas le cas, mais en gros, c'est un site Gatsby servi par Netlify ...

  "dependencies": {
    "@sentry/browser": "^5.1.1",
    "@types/algoliasearch": "^3.30.8",
    "@types/dotenv": "^6.1.0",
    "@types/he": "^1.1.0",
    "@types/jump.js": "^1.0.2",
    "@types/node": "^11.13.7",
    "@types/node-fetch": "^2.3.3",
    "@types/react": "^16.8.14",
    "@types/react-dom": "^16.8.4",
    "@types/source-map-support": "^0.5.0",
    "@types/standard-http-error": "^2.0.0",
    "@types/styled-components": "^4.1.14",
    "algoliasearch": "^3.32.0",
    "aws-sdk": "^2.443.0",
    "babel-plugin-styled-components": "^1.10.0",
    "date-fns": "^2.0.0-alpha.27",
    "gatsby": "^2.3.31",
    "gatsby-image": "^2.0.40",
    "gatsby-plugin-google-analytics": "^2.0.18",
    "gatsby-plugin-manifest": "^2.0.29",
    "gatsby-plugin-netlify": "^2.0.15",
    "gatsby-plugin-offline": "^2.0.24",
    "gatsby-plugin-react-helmet": "^3.0.12",
    "gatsby-plugin-sharp": "^2.0.35",
    "gatsby-plugin-styled-components": "^3.0.6",
    "gatsby-plugin-typescript": "^2.0.13",
    "gatsby-source-filesystem": "^2.0.32",
    "gatsby-transformer-sharp": "^2.1.18",
    "he": "^1.2.0",
    "hyphenslug": "^1.0.0",
    "intersection-observer": "^0.6.0",
    "jump.js": "^1.0.2",
    "mkdirp2": "^1.0.4",
    "mustache": "^3.0.1",
    "node-fetch": "^2.3.0",
    "nodemailer": "^6.1.1",
    "prop-types": "^15.7.2",
    "react": "^16.8.3",
    "react-dom": "^16.8.3",
    "react-helmet": "^5.2.0",
    "sitemap": "^2.1.0",
    "source-map-support": "^0.5.12",
    "standard-http-error": "^2.0.1",
    "strip": "^3.0.0",
    "styled-components": "^4.1.3",
    "ts-node": "^8.1.0",
    "typescript": "^3.4.5",
    "whatwg-fetch": "^3.0.0"
  },

Je vois le plugin hors ligne installé, pouvez-vous confirmer qu'il n'est pas inclus dans votre fichier gatsby-config?

Oui désolé mais pas utilisé, voici ma config Gatsby:

module.exports = {
  siteMetadata: {/*...*/},
  plugins: [
    `gatsby-plugin-typescript`,
    `gatsby-plugin-styled-components`,
    `gatsby-plugin-react-helmet`,
    {
      resolve: `gatsby-source-filesystem`,
      options: {
        name: `images`,
        path: `${__dirname}/src/images`,
      },
    },
    {
      resolve: `gatsby-plugin-sharp`,
      options: {
        defaultQuality: 80,
      },
    },
    `gatsby-transformer-sharp`,
    {
      resolve: `gatsby-plugin-manifest`,
      options: {
        name: `Le Bikini`,
        short_name: `Le Bikini`,
        start_url: `/`,
        background_color: `#000000`,
        theme_color: `#000000`,
        display: `minimal-ui`,
        icon: `src/images/favicon.png`,
      },
    },
    `gatsby-plugin-netlify`,
    {
      resolve: `gatsby-plugin-google-analytics`,
      options: {
        trackingId: process.env.GOOGLE_ANALYTICS,
        head: false,
        anonymize: true,
        respectDNT: true,
      },
    },

    // this (optional) plugin enables Progressive Web App + Offline functionality
    // 'gatsby-plugin-offline',
    // To learn more, visit: https://gatsby.app/offline
  ],
}

Et vous pouvez le voir en direct sur https://lebikini.netlify.com

Je ne peux pas aider sans un référentiel de reproduction car j'ai besoin de vérifier plus de choses à déboguer

soyez prudent @antoinerousseau
gatsby-plugin-netlify plugin
https://www.npmjs.com/package/gatsby-plugin-netlify

@abumalick @antoinerousseau Nous déplaçons gatsby-plugin-netlify à la fin de notre tableau de plugins, et cela n'a rien changé.

Peut-être que cela a quelque chose à voir avec cela? https://github.com/gatsbyjs/gatsby/issues/11982

Chaque fois que je rencontre le problème moi-même (pur hasard), il y a toujours une sorte d'erreur à voir avec des pages-manifest manquantes.

J'ai décrit le seul correctif qui fonctionne dans tous les cas dans un problème connexe ici: https://github.com/gatsbyjs/gatsby/issues/12399#issuecomment -488247566

J'ai eu le même problème. Mon cas était le même que @ efd1 - l'importation sous forme de import { Module } from "." cassait ma version de production (le développement fonctionnait sans problème). Ce n'était malheureusement pas très facile à déboguer et à trouver.

image

Les suggestions ci-dessus ne semblent pas fonctionner pour moi. Je ne vois cela que pour les utilisateurs iOS et sporadiquement. Je n'arrive pas à le reproduire et il est donc difficile de comprendre ce qui ne va pas. Des conseils sur la façon de déterminer quel pourrait être le problème sous-jacent?

Pour faire écho à la déclaration de Kyle ci-dessus, nous avons besoin de sites de démonstration reproductibles pour pouvoir vous aider. http://gatsby.dev/reproduction

il est difficile de dire ce qui se passe sans reproduction. http://gatsby.dev/reproduction

@KyleAMathews Honnêtement, je pense que cela se produit sur chaque site Gatsby déployé sur Netlify qui comprend plusieurs pages. Jetez Sentry sur un et voyez par vous-même.

Je dirais que cette déclaration est un peu prématurée car, par exemple, tous mes projets Gatsby sont déployés sur Netlify et je n'ai jamais vu l'erreur (au cours des deux derniers mois). Une reproduction serait vraiment utile.

@LekoArts @marcysutton La trace Sentry est toujours accessible au public ici .

Est-ce que cela vous aide?

L'erreur se produit sur mon site de production environ une fois par jour.

Je dirais que cette déclaration est un peu prématurée car, par exemple, tous mes projets Gatsby sont déployés sur Netlify et je n'ai jamais vu l'erreur (au cours des deux derniers mois). Une reproduction serait vraiment utile.

@lekoarts Avez-vous configuré Sentry? Combien de trafic?

L'erreur se produit sur mon site de production environ une fois par jour.

@Jivings Combien de trafic? J'essaie d'avoir une idée de la fréquence.

Autant que je sache, j'ai détecté 541 instances de cette erreur depuis le 1er mars sur 160 000 pages vues (47 000 sessions) sur un site Web que je gère. Cela représente 0,3% de chances qu'une page vue déclenche le comportement, ou 1,2% de chances qu'une session en fasse l'expérience. Pas génial en ce qui concerne les reproductions; nous aurons probablement besoin de traces, de recherches et d'autres débogages à l'ancienne pour découvrir cela.

C'est plus courant sur les appareils mobiles, mais la plupart de leurs visites proviennent d'un mobile, et cela se produit également sur le bureau. La marque / le modèle / le navigateur ne semble pas pertinent. Pour ce que cela vaut, il s'agit d'une plate-forme audio en streaming, nous avons donc tendance à voir des durées de session beaucoup plus longues que les sites Web axés sur le marketing ou qui voient beaucoup de trafic entrant et sortant.

Quelqu'un voit-il cette erreur en production _sans_ l'utilisation de Sentry? Quelqu'un utilise Honeybadger, Raygun, Rollbar, Airbrake ou similaire?

@coreyward Le voit également par intermittence avec Raygun. C'est seulement sur une page spécifique et des effets Mobile Safari et Chrome uniquement.

@coreyward Nous utilisons Bugsnag et l'avons vu environ 4,8k fois le mois dernier.

@coreyward Peut-être que cela est utile:

(sur https://github.com/gatsbyjs/gatsby/issues/12399#issuecomment-480082161)

Nous utilisons Bugsnag et voyons cela apparaître pour environ 1% du trafic. Les navigateurs semblent correspondre à peu près à notre répartition globale du trafic, sans y voir de modèles clairs.

@coreyward Semble affecter environ 1% du trafic pour nous.

@KyleAMathews Hey, je viens de rencontrer cette erreur sur le site Web de production GatsbyJS. Après avoir rafraîchi quelques fois le problème a disparu.

Screen Shot 2019-05-24 at 6 02 32 PM

Nous avons été confrontés à ce problème lors de l'utilisation du plug-in hors connexion et du déploiement sur le stockage blob Azure plus le CDN. Je lisais que le service worker js ne doit pas être desservi à partir du CDN et devrait provenir directement du domaine du serveur. C'est peut-être la cause profonde.

Nous avons ers-hcl.github.io qui est déployé avec le plugin hors ligne et le service worker activés sur ghpages. Jamais rencontré ce problème là-bas qui pointe probablement vers mon commentaire précédent en termes de problème lié à la gestion CDN du plugin hors ligne

ce problème n'a rien à voir avec le plugin hors ligne. Et si vous utilisez le plugin hors ligne, assurez-vous de recharger ou d'afficher une notification push aux utilisateurs indiquant que du nouveau contenu est disponible pour mettre à jour le logiciel.

@smakosh chaque fois que nous désactivons le plugin hors ligne, ce problème disparaît pour nous.

Nous le voyons et nous n'utilisons pas le plugin hors ligne.

  • Je me trompe peut-être - une observation dans le fichier ensure-resources.js , qui est le composant qui génère cette erreur, mais pensé à mentionner juste au cas où.
  • En regardant le code pour ensure-resources.js , il semble utiliser window.location sur la ligne n ° 81, où comme il y a une propriété location qui est utilisée dans ce composant dans tous les d'autres lieux.

image

Je doute que notre situation particulière soit utile à de nombreuses autres personnes, mais je voulais la partager ici au cas où.

Cela affectait DataCamp.com en raison d'un problème CORS. Nous utilisons le préfixage d'actifs et l'hébergement d'actifs sur S3, servis via Cloudfront. Lors de notre premier déploiement avec le préfixage d'actifs, nous avons oublié de définir les en-têtes CORS dans S3 pour permettre l'accès aux actifs de notre domaine (oups). Nous avons mis à jour nos en-têtes CORS après une minute ou deux, mais tous les nœuds périphériques où les actifs étaient déjà appelés ont apparemment mis en cache non seulement le contenu des actifs, mais aussi les en-têtes CORS! Cela a créé l'illusion qu'un bug étrange n'affectait qu'un petit pourcentage d'utilisateurs, alors qu'en réalité le problème était qu'un petit pourcentage de nœuds périphériques avait les anciens en-têtes mis en cache. Nous avons résolu ce problème en créant une invalidation dans Cloudfront pour tous les actifs.

Plus généralement: si l'un de vos utilisateurs a un bloqueur de publicités qui sélectionne un nom d'actif particulier comme étant potentiellement lié à la publicité ou au suivi, si à tout moment entre votre serveur d'actifs et l'utilisateur final il y a un intermédiaire qui pourrait modifier les en-têtes pour un petit pourcentage de vos utilisateurs (par exemple un réseau d'entreprise qui filtre le contenu), ou si toute autre chose étrange sur le réseau peut se produire, il semble que tout cela puisse contribuer à cette erreur.

Nous avons eu ce même problème et il s'avère que la principale raison derrière cela était les dépendances circulaires

@bigfanjs pourrais-tu entrer un peu plus dans les détails?

@DSchau Eh bien, récemment, un coéquipier a ajouté une fonctionnalité et nous l'avons déployée, le navigateur commence à se plaindre d'un problème similaire, nous n'avions pas d'idée, mon coéquipier a créé une page et un gros composant réutilisable commun. Nous avons donc commenté le code à la fois dans la page et dans le composant, et avons plutôt rendu une balise <div /> . Et a exécuté gatsby build puis gatsby serve afin de générer la production du serveur localement. et nous avons commencé à réduire en commentant du code et en exécutant les recommandations ci-dessus à chaque fois. comme:

import {Button} from "components/kit"

// comment the rest to see if `Button` is causing the issue
// import {Box} from "components/kit"
// import {Form} from "components/kit" 

la prochaine fois que nous commenterons Box et ainsi de suite ...

Donc, finalement, l'erreur est simple.

Nous avons un composant commun appelé kit qui importe quelques composants:

composants / kit

| --- Box.js
| --- Button.js
| --- Form.js
| --- index.js

index.js

export { default as Box } from "./Box"
export { default as Button } from "./Button"
export { default as Form } from "./Form"

par exemple dans Form nous essayions d'importer Box cette façon:
import {Box} from "components/kit"

Mais cela cause le problème, nous l'avons changé quelque chose comme:
import {Box} from "./Box"

et cela a fonctionné.

J'espère que ça t'as aidé.

Même problème ici, voir cela périodiquement sur des sites Web que je n'ai pas visités depuis quelques jours (le site Web de Gatsby également). Pas sur IE11 mais sur Chrome. Après quelques secondes de page vierge, il y a une actualisation après quoi tout fonctionne à nouveau.

Versions d'un exemple:
gatsby : 2.0.118
gatsby-plugin-offline : 2.0.23

J'ai eu une erreur similaire avec celui-ci. Et je ne pouvais pas accéder à la page d'administration de netlify cms sur la version de production.
Et j'ai trouvé que c'était finalement à cause de l'incompatibilité des versions de gatsby et gatbsy-plugin-offline.
pouces vers le haut!!!

Pour les personnes qui voient cette erreur occasionnellement - c'est à prévoir en fait - chaque fois que vous déployez une nouvelle version de votre site, la plupart des hôtes suppriment les anciennes versions du site, ce qui signifie que toute personne déjà sur le site qui essaie de naviguer vers une page ne le fera pas. être en mesure de trouver les ressources pour cette page, lèvera donc cette erreur, puis déclenchera une actualisation complète en récupérant le HTML de la page.

Vous pouvez voir les tests ici: https://github.com/gatsbyjs/gatsby/blob/cbbed1dde8a4fd25080e9ab65d7661dfa8fbf327/e2e-tests/production-runtime/cypress/integration/resource-loading-Lresilience.jstegration/resource-loading-Lresilience.jstegration/resource-loading-Lresilience.jstegration/resource-loading-Lresilience.jstegration/resource-loading-Lresilience.jstegration

@KyleAMathews Il semble que l'actualisation ne soit pas déclenchée par cette erreur de ressources manquantes, de sorte qu'un utilisateur est bloqué sur une page cassée ou simplement blanche. Avons-nous besoin du plugin hors ligne pour garantir l'actualisation?

Non ... si cela arrive, c'est un bug dans Gatsby. Avons-nous une reproduction du scénario que vous décrivez?

-
Kyle Mathews

Blog: http://bricolage.io
Twitter: http://twitter.com/kylemathews

Le mar 04 juin 2019 à 15 h 05, Jack <[email protected]> a écrit:

@ KyleAMathews (https://github.com/KyleAMathews) Il semble que le rafraîchissement
n'est pas déclenché par cette erreur de ressources manquantes, donc un utilisateur est bloqué
sur une page cassée ou simplement blanche. Avons-nous besoin du plugin hors ligne pour
s'assurer que l'actualisation se produit?

-
Vous recevez cela parce que vous avez été mentionné.
Répondez directement à cet e-mail, affichez-le sur GitHub (
https://github.com/gatsbyjs/gatsby/issues/11524?email_source=notifications&email_token=AAARLB6OVB47GMB5K2242M3PY3RLFA5CNFSM4GUAYCZKYY3PNVWWK3TUL52HS4DFVMB17GMB5K2242M3PY3RLFA5CNFSM4GUAYCZKYY3PNVWWK3TUL52HS4DFVMB17HWWWK3TUL52HS4DFVMB17HWWWK3TUL52HS4DFVMB17HWWWK3TUL52HS4DFVMB17HWWWK3TUL52HS4DFVMB17WWWK3TUL52HS4DFVM
) ou coupez le fil (
https://github.com/notifications/unsubscribe-auth/AAARLB7QKXUL3AZF4MXCO33PY3RLFANCNFSM4GUAYCZA
).

@KyleAMathews Mis à part la capture

Il semble que @coreyward l'ait attrapé sur le site Gatsby plus haut dans les commentaires.

@Moocar a également travaillé sur un grand refactor de la façon dont nous chargeons les données dans le runtime https://github.com/gatsbyjs/gatsby/pull/13004

Je n'ai pas de reproduction pour le moment, mais je peux confirmer que j'ai vu cela au moins une demi-douzaine de fois où il ne s'est pas rafraîchi tout seul.

@KyleAMathews, nous constatons que cela se produit pour 1% des demandes sur tous les navigateurs, indépendamment du moment où nous déployons - nous verrons cela se produire le dimanche au même rythme même lorsque le dernier déploiement a eu lieu vendredi. Voici une capture d'écran de bugsnag pour illustrer la cohérence relative au fil du temps (bien sûr encore une petite quantité de grumeaux par rapport à la variation normale du trafic):

image

@gwlortscher très intéressant - ne semble donc pas lié aux déploiements. Il semble que ce graphique montre le nombre d'erreurs. Pourriez-vous partager un graphique représentant le pourcentage de demandes? Que je suppose ne varie pas avec le trafic?

Juste pour ajouter une cause possible:
Dans mon cas, c'était un new Buffer(val, 'base64').toString(); en remplacement de atob en SSR.
(Fondamentalement, si atob n'est pas disponible, utilisez la version node-js.)
Travaillé en développement, compilé correctement, planté au démarrage de la page de production. De plus, l'inclusion était suffisante, le code n'a jamais été exécuté, il était juste présent dans le morceau qui serait chargé au démarrage.

@KyleAMathews Bugsnag ne semble pas avoir de graphique de% de demandes, mais assez facile à calculer à partir d'analyses. Voici les 8 derniers jours (erreurs en pourcentage des demandes):

6/1 2,4%
6/2 2,3%
6/3 2,2%
6/4 2,4%
6/5 2,4%
6/6 2,1%
6/7 2,4%
6/8 2,4%

Nous avons vu cela pour la première fois lors de la mise à niveau vers Gatsby v2.9.4. Le retour à la version 2.8.5 a résolu le problème. J'essaie toujours d'analyser la cause.

Nous avons eu ce même problème et l'avons également vu résolu en rétrogradant à 2.8.5. Auparavant, nous recevions constamment des erreurs concernant les ressources manquantes pour "/"

@bmatzner @wilcoxmd Nous sommes sur 2.8.x depuis un certain temps et avons des ressources manquantes dans chaque mise à niveau de Gatsby depuis que nous sommes passés de la v1 à la v2. En permanence, pas de pic ou de changement lors de la mise à niveau depuis la v2.

Nous voyons certainement depuis longtemps avant 2.8.5. Je pense que ce problème a une grande variété de causes. v2.94 semble juste en avoir introduit un autre.

@bmatzner @wilcoxmd Nous sommes sur 2.8.x depuis un certain temps et avons des ressources manquantes dans chaque mise à niveau de Gatsby depuis que nous sommes passés de la v1 à la v2. En permanence, pas de pic ou de changement lors de la mise à niveau depuis la v2.

Même

@jackhair je vois. Nous n'avons pas encore lancé notre site Gatsby, donc je ne sais pas si nous verrons encore un pourcentage du trafic voir ce problème. Nous avons rencontré ce problème lors du déploiement d'une version intermédiaire. Nous étions sur 2.9.2 et les choses allaient bien pour servir une version localement, mais dès que nous l'avons déployée, nous avons eu une erreur de ressources manquantes permanente sur n'importe quel navigateur. Le passage à la version 2.8.5 m'a juste permis de déployer et de faire fonctionner le site.

@jackhair je vois. Nous n'avons pas encore lancé notre site Gatsby, donc je ne sais pas si nous verrons encore un pourcentage du trafic voir ce problème. Nous avons rencontré ce problème lors du déploiement d'une version intermédiaire. Nous étions sur 2.9.2 et les choses allaient bien pour servir une version localement, mais dès que nous l'avons déployée, nous avons eu une erreur de ressources manquantes permanente sur n'importe quel navigateur. Le passage à la version 2.8.5 m'a juste permis de déployer et de faire fonctionner le site.

Intéressant. Pour ce que cela vaut, nous n'avons jamais été en mesure de répliquer le problème localement (gatsby develop), ce n'est que lorsqu'il est construit sur un environnement de production que nous voyons le problème.

Nous avons une branche de production sur 2.9.2 qui semble prometteuse, jusqu'à présent aucun problème, mais le trafic y est minuscule par rapport à la production principale. Je publierai les résultats une fois que nous aurons déployé, en espérant que la mise à jour du manifeste de la page vers Gatsby la semaine dernière aidera beaucoup.

Nous avons 2.9.0 en production et malheureusement, nous voyons toujours le problème au même rythme qu'auparavant - 1 à 2% du trafic sur tous les navigateurs.

Le retour en arrière de la version à 2.8.5 partir de 2.9.4 semble avoir résolu le problème pour nous.
Dans notre cas, cela semble être lié à des fichiers pages-manifest-{hash}.js[.map] manquants.
Les versions 2.9.3 et 2.9.4 ont des changements de rupture potentiels: voir https://github.com/gatsbyjs/gatsby/pull/14732 (à partir des journaux des modifications du package Gatsby: https://github.com /gatsbyjs/gatsby/blob/master/packages/gatsby/CHANGELOG.md).
Pour confirmer cela, un dernier test pour nous devrait être de mettre à niveau Gatsby jusqu'à 2.9.2 .

FYI @moocar a un PR pour rendre le chargement des ressources plus robuste, par exemple, réessayer échoué ou ressources partiellement chargées https://github.com/gatsbyjs/gatsby/pull/14889

Si l'un d'entre vous a le temps de revoir / essayer cela, ce serait très apprécié. Je m'excuse de ne pas avoir compris cela plus tôt - il n'était pas clair à quel point c'était répandu ou quelle en était la cause avant de creuser récemment avec @Moocar

Je ne sais pas si cela aidera plus, mais je l'avais sur https://gatsbyjs.org/contributing a quelques minutes:

Screenshot 2019-06-19 at 17 04 17

A été réparé après un rechargement, mais il semblait intéressant de mettre ici @KyleAMathews

Je pense que cela pourrait être un problème avec la configuration du plugin hors ligne, car il pourrait ne pas vérifier correctement les modifications avec les fichiers manifestes de page, et donc conserver les anciens.

Je vais essayer de regarder cela la semaine prochaine avec @wardpeet puisque j'ai écrit une grande partie du plugin hors ligne - malheureusement, j'ai été très occupé récemment avec les examens et je déménager, je n'ai donc pas pu vérifier tout cela change correctement 😞

@ davidbailey00 Avant d'aller trop

@ davidbailey00 nous avions également le problème sans le plugin hors ligne. Il est dans mes modules de nœuds, mais toujours commenté dans mon fichier de configuration.

Nous vivons également cela sans le plugin hors ligne installé.

@ davidbailey00 ouais, nous pensons que le correctif principal gère correctement certains cas d'erreur inhabituels pour les requêtes ajax et ajoute une logique de nouvelle tentative https://github.com/gatsbyjs/gatsby/pull/14889

Nous avons déployé le PR sur gatsbyjs.org au cours des ~ 4 à 5 derniers jours et les choses vont vraiment bien! Il n'y a eu aucun nouvel événement de "ressources manquantes" depuis le déploiement.

https://github.com/gatsbyjs/gatsby/pull/14889#issuecomment -505872897

@wardpeet travaille sur des tests pour simuler des problèmes de réseau mais nous devrions avoir cela dans les prochaines 24 heures.

Merci @KyleAMathews a hâte de faire fonctionner ça!

@KyleAMathews merci à vous et à votre équipe pour cette mise à jour!

@KyleAMathews J'ai toujours ce problème sur mon site. localement ça marche bien et en production ça ne marche pas. De plus, je le vois 100% du temps, pas sporadiquement comme certains des commentaires ci-dessus. Cela dit, j'ai parcouru la plupart des solutions et leur utilisation n'a pas abouti à un correctif. Avez-vous une version spécifique de Gatsby qui contient le correctif pour que je puisse m'assurer que je frappe quelque chose de différent?

Je suis prêt à partager l'URL en privé et à ajouter un accès contrib au dépôt privé si quelqu'un de l'équipe Gatsby veut jeter un coup d'œil (DM moi sur Twitter ). Merci pour tous les conseils / suggestions - pour être clair, les choses que j'ai testées sont:

  • Ajout du rechargement du service worker sur gatsby-browser.js
  • Suppression du plugin hors ligne
  • Mise à jour de tous les modules de nœuds
  • S'assurer que les importations ne sont pas référencées en utilisant .

Nous devrions avoir celui-ci corrigé dans la dernière version de gatsby [email protected] . Nous l'avons exécuté sur gatsbyjs.org et les erreurs ont disparu pour nous.

Veuillez mettre à niveau et laissez-nous savoir s'il y a plus de problèmes! Clôture pour l'instant.

@KyleAMathews Merci - Je l'ai fait, malheureusement cela ne l'a pas

@KyleAMathews Merci - Je l'ai fait, malheureusement cela ne l'a pas

Nous n'obtiendrons pas les ressources manquantes car elles ont été supprimées et remplacées par une erreur différente: https://github.com/gatsbyjs/gatsby/pull/14889/files#diff -3182dbe2979ea0744c50242668edc572L173

Nous avons récemment déployé ce correctif, en vérifiant les journaux de bogues pour les erreurs nouvelles / différentes.

EDIT: ouais ressemble à this.loadPageDataJson(...).then(...).finally is not a function est le nouveau missing resources

@jackhair sur quel navigateur testez-vous? Je suis sûr que nous avons enfin ajouté un polyfill. Cela pourrait être faux.

l'esprit de partager votre repo? ou une petite reproduction?

@jackhair sur quel navigateur testez-vous? Je suis sûr que nous avons enfin ajouté un polyfill. Cela pourrait être faux.

l'esprit de partager votre repo? ou une petite reproduction?

Nous constatons cela sur plusieurs navigateurs en production:

Screen Shot 2019-07-02 at 13 29 03

Cela vous dérange-t-il de partager l'URL de votre site Web pour que je puisse y jeter un œil et peut-être le déboguer un peu?

Cela vous dérange-t-il de partager l'URL de votre site Web pour que je puisse y jeter un œil et peut-être le déboguer un peu?

Sûr! https://ritual.com

@jackhair Je peux confirmer le bogue. Pourriez-vous créer un nouveau problème avec les informations fournies ci-dessus?

@wardpeet @jackhair nous finally polyfill, y a-t-il un nouveau problème ajouté? peut-il refaire celui-ci s'il vous plaît?

@eknowles @wardpeet Désolé, nous

@wardpeet @jackhair J'ai réussi à retrouver notre problème avec le polyfill enfin.

Nous avons trouvé que l'une de nos dépendances incluait babel-polyfill avec useBuiltins: usage au lieu de entry.

Dans tous les cas, nous avons dû rétrograder redux-api-middleware (non lié à gatbsy).
https://github.com/agraboso/redux-api-middleware/compare/v2.3.0...v3.0.0

cela a résolu notre bogue finally . Je recommanderais de suivre la trace de la pile dans la chaîne et de voir quelle bibliothèque est la coupable car le polyfill Promise pourrait être remplacé mais une bibliothèque méchante.

Merci, nous avons déjà vu cela avec node_modules et babel-runtime. Je vais devoir repenser comment nous pouvons résoudre ce problème à l'avenir ou au moins donner un message d'erreur approprié.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

jimfilippou picture jimfilippou  ·  3Commentaires

benstr picture benstr  ·  3Commentaires

magicly picture magicly  ·  3Commentaires

dustinhorton picture dustinhorton  ·  3Commentaires

ghost picture ghost  ·  3Commentaires