Estou usando o nó de requisição HTTP para obter um arquivo PDF e depois usando o nó Extrair do arquivo para extrair os dados do arquivo PDF. Tudo estava funcionando bem antes, mas agora estou recebendo um erro "DOMMatrix is not defined". Ao testar o fluxo de trabalho, a saída de

Descreva o problema/erro/pergunta

Qual é a mensagem de erro (se houver)?

Por favor, compartilhe seu workflow

(Selecione os nós na sua tela e use os atalhos de teclado CMD+C/CTRL+C e CMD+V/CTRL+V para copiar e colar o workflow.)

Compartilhe a saída retornada pelo último nó

Informações sobre sua configuração n8n

  • Versão n8n:
  • Banco de dados (padrão: SQLite):
  • Configuração n8n EXECUTIONS_PROCESS (padrão: own, main):
  • Executando n8n via (Docker, npm, n8n cloud, aplicativo desktop):
  • Sistema operacional:

@Farman_Aliyev regressão conhecida — o node Extract from File do n8n usa pdfjs-dist que desde a versão 1.98 requer APIs de navegador como DOMMatrix que não estão disponíveis no Node. múltiplas issues abertas no github sobre isso (#16593, #16438, #16422). workaround que funciona sem fazer downgrade: use um node Code com o pacote npm pdf-parse em vez disso. defina NODE_FUNCTION_ALLOW_EXTERNAL=pdf-parse nas suas variáveis de ambiente, extraia o texto do binário no node Code, sem dependência de API de navegador. qual é sua versão do n8n + self-hosted ou cloud?

Bem-vindo @Farman_Aliyev!

achamm está certo - essa é uma regressão conhecida. Aqui está o nó Code concreto que você pode adicionar para substituir o nó 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 } }];

Também adicione NODE_FUNCTION_ALLOW_EXTERNAL=pdf-parse às suas variáveis de ambiente primeiro. Funciona tanto em self-hosted quanto em cloud.

Atualize sua Instância do n8n (Recomendado)

Este bug foi sinalizado dentro da comunidade n8n e pipeline de desenvolvedores. Se você está executando uma versão mais antiga ou uma release específica quebrada do n8n, atualizar para a versão mais recente ou fixar sua imagem Docker para a release estável mais recente geralmente resolve o problema, pois patches são lançados rapidamente para travamentos de nodes como este.

Me avise se a atualização resolveu o problema.