Integre recursos poderosos de montagem de documentos em seus aplicativos Node usando a API REST do GroupDocs.Assembly Cloud.
Iniciar teste gratuitoGroupDocs.Assembly Cloud é um serviço REST totalmente gerenciado que permite aos desenvolvedores criar documentos ricamente formatados e prontos para impressão a partir de modelos reutilizáveis e fontes de dados externas.
A plataforma suporta uma ampla variedade de formatos de origem e destino – desde arquivos clássicos do Microsoft Office (DOCX, XLSX, PPTX) até PDF, HTML, OpenDocument e diversos formatos gráficos – permitindo que você gere contratos, faturas, relatórios, folhetos de marketing ou qualquer documento personalizado sem instalar nenhum software de terceiros em seus próprios servidores. Todo o trabalho pesado – análise de modelos, vinculação de dados, renderização de imagens, geração de código de barras, avaliação de fórmulas e conversão de arquivos – é realizado na nuvem, o que garante resultados consistentes em todos os sistemas operacionais e reduz os custos de infraestrutura.
Por que usar o SDK do Node.js?
Fluxo de trabalho típico em um aplicativo Node.js
uploadFile do SDK.AssembleOptions – especifique o caminho do modelo, a fonte de dados, o formato de saída desejado (PDF, DOCX, HTML, …) e quaisquer configurações adicionais (por exemplo, geração de código de barras, cor de fundo).assembleDocument – o SDK envia uma única solicitação HTTP que aciona o processo de montagem no servidor.O exemplo a seguir (mostrado na seção Mais Recursos) demonstra cada uma dessas etapas em um trecho de código compacto e pronto para produção.
O snippet abaixo demonstra um fluxo completo: carregue um modelo, leia um arquivo de dados JSON, configure a solicitação de montagem e receba o documento montado.
Etapas
AssembleOptions – escolha o formato de saída e vincule os dados.assembleDocument para gerar o relatório.// Replace with your App SID and App Key
const { AssemblyApi, AssembleDocumentRequest, AssembleOptions, TemplateFileInfo, model } = require("groupdocs-assembly-cloud");
const fs = require("fs");
const path = require("path");
// Authorization placeholder
const assemblyApi = new AssemblyApi(".#-.#-.#-.#-.#", "......");
// 1️⃣ Upload the template file
const templatePath = "Input1.docx";
const uploadRequest = new model.UploadFileRequest({
fileContent: fs.createReadStream(templatePath),
path: templatePath
});
await assemblyApi.uploadFile(uploadRequest);
// 2️⃣ Read the data source (JSON)
const dataPath = "Input2.docx";
const reportData = fs.readFileSync(dataPath, "utf8");
// 3️⃣ Set assembly options
const assembleOptions = new AssembleOptions({
saveFormat: "pdf",
reportData: reportData,
templateFileInfo: new TemplateFileInfo({ filePath: templatePath })
});
// 4️⃣ Create and send the assemble request
const request = new AssembleDocumentRequest({ assembleOptions });
const result = await assemblyApi.assembleDocument(request);
// 5️⃣ Save the resulting document
const outputPath = path.join(__dirname, "GeneratedReport.pdf");
fs.writeFileSync(outputPath, result.body);
console.log("Report generated successfully:", outputPath);