J'utilise un nœud HTTP request pour récupérer un fichier PDF, puis un nœud Extract from file pour extraire les données du fichier PDF. Tout fonctionnait bien avant, mais maintenant j'obtiens une erreur « DOMMatrix is not defined ». Lors du test du workflow, la sortie de

Décrivez le problème/l’erreur/la question

Quel est le message d’erreur (le cas échéant) ?

Veuillez partager votre workflow

(Sélectionnez les nœuds sur votre canevas et utilisez les raccourcis clavier CMD+C/CTRL+C et CMD+V/CTRL+V pour copier et coller le workflow.)

Partagez la sortie retournée par le dernier nœud

Informations sur votre configuration n8n

  • Version de n8n :
  • Base de données (par défaut : SQLite) :
  • Paramètre n8n EXECUTIONS_PROCESS (par défaut : own, main) :
  • Exécution de n8n via (Docker, npm, n8n cloud, application de bureau) :
  • Système d’exploitation :

@Farman_Aliyev régression connue — le nœud Extract from File de n8n utilise pdfjs-dist qui depuis la version 1.98 nécessite des API de navigateur comme DOMMatrix qui ne sont pas disponibles dans Node. plusieurs problèmes ouverts sur GitHub à ce sujet (#16593, #16438, #16422). une solution de contournement qui fonctionne sans rétrograder : utilisez un nœud Code avec le paquet npm pdf-parse à la place. définissez NODE_FUNCTION_ALLOW_EXTERNAL=pdf-parse dans vos variables d’environnement, extrayez le texte du binaire dans le nœud Code, aucune dépendance à l’API de navigateur. quelle est ta version de n8n + auto-hébergée ou cloud ?

Bienvenue @Farman_Aliyev!

achamm a raison - c’est une régression connue. Voici le nœud Code concret que vous pouvez utiliser pour remplacer le nœud Extract from File:

const pdfParse = require('pdf-parse');
const binaryKey = Object.keys(items[0].binary)[0]; // gets the first binary field
const buffer = Buffer.from(items[0].binary[binaryKey].data, 'base64');
const result = await pdfParse(buffer);
return [{ json: { text: result.text } }];

Ajoutez également NODE_FUNCTION_ALLOW_EXTERNAL=pdf-parse à vos variables d’environnement d’abord. Fonctionne sur l’auto-hébergé et le cloud.

Mettre à jour votre instance n8n (Recommandé)

Ce bug a été signalé dans la communauté n8n et le pipeline de développement. Si vous exécutez une version antérieure ou une version cassée spécifique de n8n, la mise à jour vers la dernière version ou l’épinglage de votre image Docker à la dernière version stable résout généralement le problème, car les correctifs sont déployés rapidement pour les crashes de nœud comme celui-ci.

Faites-moi savoir si la mise à jour a résolu le problème.