Node.js SDK cho lắp ráp tài liệu và tạo báo cáo

Tích hợp khả năng lắp ráp tài liệu mạnh mẽ vào các ứng dụng Node của bạn bằng cách sử dụng GroupDocs.Assembly Cloud REST API.

  • GroupDocs.Assembly Cloud SDK cho cURL
  • GroupDocs.Assembly Cloud SDK cho .NET
  • GroupDocs.Assembly Cloud SDK cho Java
  • GroupDocs.Assembly Cloud SDK cho PHP
  • GroupDocs.Assembly Cloud SDK cho Python
  • GroupDocs.Assembly Cloud SDK cho Ruby
  • GroupDocs.Assembly Cloud SDK cho Go
  • GroupDocs.Assembly Cloud SDK cho C++
  • GroupDocs.Assembly Cloud SDK cho Swift
Bắt đầu dùng thử miễn phí

GroupDocs.Assembly Cloud là một dịch vụ được quản lý hoàn toàn, dựa trên dịch vụ REST cho phép các nhà phát triển tạo tài liệu có định dạng phong phú, sẵn sàng in từ các mẫu có thể tái sử dụng và nguồn dữ liệu bên ngoài.

Nền tảng hỗ trợ đa dạng các định dạng nguồn và đích – từ các tệp Microsoft Office cổ điển (DOCX, XLSX, PPTX) đến PDF, HTML, OpenDocument, và nhiều định dạng đồ họa – cho phép bạn tạo hợp đồng, hóa đơn, báo cáo, tờ rơi marketing, hoặc bất kỳ tài liệu tùy chỉnh nào mà không cần cài đặt phần mềm của bên thứ ba trên máy chủ của mình. Tất cả các công việc nặng – phân tích mẫu, ràng buộc dữ liệu, render hình ảnh, tạo mã vạch, đánh giá công thức và chuyển đổi tệp – đều được thực hiện trên đám mây, đảm bảo kết quả nhất quán trên các hệ điều hành và giảm chi phí hạ tầng.

Tại sao nên sử dụng Node.js SDK?

  • Runtime không cần cài đặt – SDK là một lớp vỏ nhẹ quanh Assembly Cloud REST API, vì vậy bạn chỉ cần Node 12+ và một gói npm.
  • Đa nền tảng – hoạt động giống nhau trên Windows, macOS, Linux, hoặc trong container.
  • Bảo mật – mọi giao tiếp được mã hoá qua TLS, và xác thực được thực hiện bằng App SID cá nhân và App Key của bạn.
  • Có khả năng mở rộng – dịch vụ đám mây có thể xử lý các yêu cầu tài liệu đơn lẻ cũng như các công việc Mail‑Merge hàng loạt với khối lượng lớn.
  • Có thể mở rộng – cùng một API có thể được sử dụng từ bất kỳ ngôn ngữ nào có thể gọi các endpoint REST; Node.js SDK chỉ đơn giản làm cho việc xây dựng yêu cầu và xử lý phản hồi trở nên dễ dàng hơn.

Quy trình điển hình trong một ứng dụng Node.js

  1. Chuẩn bị một mẫu (DOCX, PPTX, v.v.) chứa các trường placeholder và các cấu trúc lập trình tùy chọn như khối điều kiện, vòng lặp, hoặc thẻ mã vạch.
  2. Tạo nguồn dữ liệu trong XML hoặc JSON cung cấp các giá trị sẽ được hợp nhất vào mẫu.
  3. Tải lên mẫu lên GroupDocs Cloud Storage bằng phương thức uploadFile của SDK.
  4. Cấu hình AssembleOptions – chỉ định đường dẫn mẫu, nguồn dữ liệu, định dạng đầu ra mong muốn (PDF, DOCX, HTML, …) và bất kỳ cài đặt bổ sung nào (ví dụ: tạo mã vạch, màu nền).
  5. Gọi assembleDocument – SDK gửi một yêu cầu HTTP duy nhất để kích hoạt quá trình lắp ráp trên máy chủ.
  6. Nhận tệp đã lắp ráp dưới dạng mảng byte, lưu cục bộ hoặc phát trực tiếp tới khách hàng.

Ví dụ sau (được hiển thị trong phần Tính năng bổ sung) minh họa từng bước này trong một đoạn mã ngắn gọn, sẵn sàng cho môi trường sản xuất.

GroupDocs.Assembly Cloud API Tính năng

Tạo tài liệu từ mẫu bằng cách sử dụng đám mây REST API

Ràng buộc dữ liệu kiểu LINQ cho các nguồn XML và JSON

Chèn hình ảnh, biểu đồ và nội dung tài liệu bên ngoài

Bảng và danh sách động từ dữ liệu mảng

Thêm siêu liên kết, dấu trang và tệp đính kèm email

Áp dụng công thức và các thao tác dữ liệu tuần tự

Các khối nội dung có điều kiện (IF‑ELSE) trong mẫu

Tạo mã vạch (QR, Code128, v.v.)

Đặt màu nền cho đầu ra HTML

Ghép thư (Mail‑Merge) cho các thư cá nhân hoá hàng loạt

Tạo báo cáo trong Node.js

Đoạn mã dưới đây minh họa quy trình hoàn chỉnh: tải lên một mẫu, đọc tệp dữ liệu JSON, cấu hình yêu cầu lắp ráp và nhận tài liệu đã lắp ráp.

Các bước

  1. Tải lên mẫu DOCX lên GroupDocs Cloud Storage.
  2. Đọc tệp dữ liệu JSON chứa các giá trị cần ghép.
  3. Cấu hình AssembleOptions – chọn định dạng đầu ra và ràng buộc dữ liệu.
  4. Gọi assembleDocument để tạo báo cáo.
  5. Lưu mảng byte trả về dưới dạng PDF (hoặc bất kỳ định dạng hỗ trợ nào).
// 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);

Support and Learning Resources

GroupDocs.Assembly Cloud cũng cung cấp SDKs cho các ngôn ngữ khác:

  Tiếng Việt
d54ae746f