264 votes

Comment résoudre le problème 'Unchecked runtime.lastError : Le port de message s'est fermé avant la réception d'une réponse" ?

J'utilise VueJS et Laravel pour mon projet. Ce problème a commencé à apparaître récemment et il apparaît même dans les anciennes branches git.

Cette erreur n'apparaît que dans le navigateur Chrome.

8 votes

Avez-vous un bloqueur de publicité ?

1 votes

Consultez ma réponse à cette autre demande : stackoverflow.com/questions/53919591/

11 votes

Merci les gars, le problème était l'extension "Video Downloader professional".

9voto

airush Points 671

Si la raison de l'erreur est l'extension, utilisez incognito Ctrl + Shift + N . En mode incognito, Chrome n'a pas d'extensions.

UPD. Si vous avez besoin d'une extension en mode incognito, par exemple ReduxDevTools ou autre, dans les paramètres de l'extension, activez "Allow in incognito".

7voto

Ahmad Awais Points 9142

Cette erreur est généralement causée par l'une de vos extensions Chrome.

Je recommande d'installer ce Désactivation de l'extension en un clic Je l'utilise avec le raccourci clavier COMMAND () + SHIFT () + D - pour désactiver/activer rapidement toutes mes extensions.

Une fois les extensions désactivées, ce message d'erreur devrait disparaître.

La paix !

4voto

Jonathan Lin Points 2498

Pour ceux qui viennent ici pour déboguer cette erreur dans Chrome 73, une possibilité est que Chrome 73 et plus rejette les demandes d'origine croisée dans les scripts de contenu.

Plus de lecture :

  1. https://www.chromestatus.com/feature/5629709824032768
  2. https://www.chromium.org/Home/chromium-security/extension-content-script-fetches

Cela affecte de nombreux auteurs d'extensions Chrome, qui doivent maintenant se démener pour corriger les extensions car Chrome pense que "Nos données montrent que la plupart des extensions ne seront pas affectées par ce changement."

(cela n'a rien à voir avec le code de votre application)

UPDATE : J'ai réglé le problème des COR mais je vois toujours cette erreur. Je pense que c'est la faute de Chrome.

4voto

Suleman Points 313

Dans mon cas, il s'agissait de l'extension chrome OneTab.

3voto

Gopal B Shimpi Points 59

Assurez-vous que vous utilisez la bonne syntaxe.

Nous devrions utiliser le sendMessage() après l'avoir écouté.

Voici un exemple simple de contentScript.js Il envoie une requête à app.js .

contentScript.js

chrome.extension.sendRequest({
    title: 'giveSomeTitle', params: paramsToSend
  }, function(result) { 
    // Do Some action
});

app.js

chrome.extension.onRequest.addListener( function(message, sender, 
 sendResponse) {
  if(message.title === 'giveSomeTitle'){
    // Do some action with message.params
    sendResponse(true);
  }
});

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X