9
votes

Erreur de débogage NodeJS: aucun module de ce type: http_parser

J'étais en train de déboguer mon application nodejs dans vs-code sans erreur, mais tout à coup cela a commencé à donner cette erreur:

Error: No such module: http_parser
at internalBinding (internal/bootstrap/loaders.js:104:17)
at _http_client.js:27:24
at NativeModule.compile (internal/bootstrap/loaders.js:363:7)
at NativeModule.require (internal/bootstrap/loaders.js:174:18)
at http.js:25:27
at NativeModule.compile (internal/bootstrap/loaders.js:363:7)
at Function.NativeModule.require (internal/bootstrap/loaders.js:174:18)
at Function.Module._load (internal/modules/cjs/loader.js:517:25)
at Module.require (internal/modules/cjs/loader.js:637:17)
at require (internal/modules/cjs/helpers.js:22:18)

En fait, l'application fonctionne avec succès, par exemple, express -js Les fonctions http fonctionnent comme prévu, mais je ne parviens pas à effectuer le débogage.

  • J'ai déjà installé ce package, nommé http-parser

Edit: Node Version: v10.14.2, il n'y a pas d'extensions installées, juste le runtime de débogage intégré de vs-code. Après avoir inspecté davantage, l'exécution arrivait dans le loader.js et se terminait par la suite.

Edit2: Renommer le dossier du projet a résolu le problème mais pourquoi? Quelqu'un pourrait-il expliquer cela?


2 commentaires

Utilisez-vous node-inspector pour le débogage?


Non, je n'utilise pas ce package. Je viens de démarrer la session de débogage à partir de la barre de menu supérieure de vs-code. Runtime de débogage vs-code intégré, rien d'autre.


3 Réponses :


6
votes

Quelle version de node.js et vs code déboguez-vous?

Quelques solutions:

1.Essayez de renommer le dossier du projet

2. désactiver les extensions et voir quelle extension influence le débogage

3.Vous pouvez également désactiver les cases à cocher

Toutes les exceptions et exceptions non interceptées sous Debug> Breakpoints, peuvent déboguer votre application vérifier si cela fonctionne


5 commentaires

Aucune extension installée.Après avoir désactivé la case à cocher Toutes les exceptions , j'ai réalisé que, il s'agit de loader.js pour charger les modules, puis il s'arrête soudainement. Mais renommer le projet a fonctionné comme par magie! Mais pourquoi est-ce ainsi? Pourriez-vous en expliquer la raison?


c'est probablement une erreur dans internal / bootstrap / loaders.js et puisque toutes les exceptions sont interceptées, il s'arrêtait là


Je ne me souviens pas que cela fait un certain temps depuis cette erreur, vous avez peut-être raison. On dirait qu'il était lié à loaders.js ou qu'il était lié à une bibliothèque tierce nommée circular json, je ne peux pas être sûr


Renommer le dossier du projet a fonctionné pour moi. peut être le problème est lié au cache vs code ou au cache npm.


Merci beaucoup les 3 l'ont corrigé pour moi. C'est incroyable que nous ignorions les exceptions et les tests fonctionnent toujours: D



4
votes

Accédez à l'onglet du débogueur, accédez à la section Points d'arrêt et désactivez "Toutes les exceptions" et "Exceptions non interceptées"


0 commentaires

1
votes

La suppression du dossier .vscode dans le répertoire de travail aidera, mais si vos points de débogage ne sont pas activés, essayez de mettre à jour vscode. Cela m'est arrivé lorsque j'utilisais la dernière version de nodejs, mais une version modérément ancienne de vscode.


0 commentaires