Node.js SDK для сборки документов и генерации отчетов

Интегрируйте мощные возможности сборки документов в ваши Node-приложения с помощью GroupDocs.Assembly Cloud REST API.

  • GroupDocs.Assembly Cloud SDK для cURL
  • GroupDocs.Assembly Cloud SDK для .NET
  • GroupDocs.Assembly Cloud SDK для Java
  • GroupDocs.Assembly Cloud SDK для PHP
  • GroupDocs.Assembly Cloud SDK для Python
  • GroupDocs.Assembly Cloud SDK для Ruby
  • GroupDocs.Assembly Cloud SDK для Go
  • GroupDocs.Assembly Cloud SDK для C++
  • GroupDocs.Assembly Cloud SDK для Swift
Начать бесплатную пробную версию

GroupDocs.Assembly Cloud - полностью управляемый сервис на основе REST, позволяющий разработчикам создавать богато оформленные, готовые к печати документы из переиспользуемых шаблонов и внешних источников данных.

Платформа поддерживает широкий спектр исходных и целевых форматов - от классических файлов Microsoft Office (DOCX, XLSX, PPTX) до PDF, HTML, OpenDocument и многих графических форматов - что позволяет генерировать контракты, счета‑фактуры, отчёты, маркетинговые брошюры или любые пользовательские документы без установки стороннего программного обеспечения на ваших серверах. Всё тяжёлое - разбор шаблонов, привязка данных, рендеринг изображений, генерация штрих‑кодов, вычисление формул и конвертация файлов - выполняется в облаке, обеспечивая единообразные результаты на разных ОС и снижая затраты на инфраструктуру.

Зачем использовать Node.js SDK?

  • Среда выполнения без установки - SDK представляет собой лёгкую оболочку вокруг Assembly Cloud REST API, поэтому вам нужен только Node 12+ и пакет npm.
  • Кросс‑платформенный - работает одинаково на Windows, macOS, Linux или в контейнерах.
  • Безопасный - вся связь зашифрована с помощью TLS, а аутентификация выполняется с использованием вашего персонального App SID и App Key.
  • Масштабируемый - облачный сервис справляется как с одиночными запросами документов, так и с высокообъёмными пакетными заданиями слияния почты.
  • Расширяемый - тот же API можно использовать из любого языка, способного вызывать конечные точки REST; Node.js SDK просто упрощает построение запросов и обработку ответов.

Типовой рабочий процесс в приложении Node.js

  1. Подготовьте шаблон (DOCX, PPTX и др.), содержащий поля‑заполнители и необязательные программные конструкции, такие как условные блоки, циклы или теги штрих‑кода.
  2. Создайте источник данных в XML или JSON, предоставляющий значения для слияния с шаблоном.
  3. Загрузите шаблон в GroupDocs Cloud Storage с помощью метода uploadFile сервиса SDK.
  4. Настройте AssembleOptions - укажите путь к шаблону, источник данных, желаемый формат вывода (PDF, DOCX, HTML и др.) и дополнительные параметры (например, генерацию штрих‑кода, цвет фона).
  5. Вызовите assembleDocument - SDK отправляет единичный запрос HTTP, инициирующий процесс сборки на сервере.
  6. Получите собранный файл в виде массива байтов, сохраните его локально или передайте напрямую клиенту.

Следующий пример (показан в разделе More Feature) демонстрирует каждый из этих шагов в компактном, готовом к продакшн фрагменте кода.

GroupDocs.Assembly Cloud API возможности

Создавайте документы из шаблонов, используя облачные REST API

Привязка данных в стиле LINQ для источников XML и JSON

Вставляйте изображения, диаграммы и внешний контент документов

Динамические таблицы и списки из данных массивов

Добавьте гиперссылки, закладки и вложения электронной почты

Применяйте формулы и последовательные операции над данными

Условные блоки контента (IF‑ELSE) в шаблонах

Генерируйте штрихкоды (QR, Code128 и др.)

Установите цвета фона для вывода HTML

Mail‑Merge для пакетных персонализированных писем

Создайте отчёт в Node.js

Ниже приведённый фрагмент демонстрирует полный процесс: загрузите шаблон, прочитайте файл данных JSON, настройте запрос сборки и получите собранный документ.

Шаги

  1. Загрузите шаблон DOCX в GroupDocs Cloud Storage.
  2. Прочитайте файл данных JSON, содержащий значения для слияния.
  3. Настройте AssembleOptions - выберите формат вывода и привяжите данные.
  4. Вызовите assembleDocument для генерации отчёта.
  5. Сохраните возвращённый массив байтов как PDF (или любой поддерживаемый формат).
// 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);

Ресурсы поддержки и обучения

GroupDocs.Assembly Cloud также предлагает SDKs для других языков:

  РУССКИЙ
dc6ecc057