SDK Node.js để biên soạn 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 GroupDocs.Assembly Cloud REST API.

  • GroupDocs.Assembly Cloud SDK for cURL
  • GroupDocs.Assembly Cloud SDK for .NET
  • GroupDocs.Assembly Cloud SDK for Java
  • GroupDocs.Assembly Cloud SDK for PHP
  • GroupDocs.Assembly Cloud SDK for Python
  • GroupDocs.Assembly Cloud SDK for Ruby
  • GroupDocs.Assembly Cloud SDK for Go
  • GroupDocs.Assembly Cloud SDK for C++
  • GroupDocs.Assembly Cloud SDK for 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 REST, cho phép các nhà phát triển tạo các 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à các nguồn dữ liệu bên ngoài.

Nền tảng này hỗ trợ nhiều định dạng nguồn và đích khác nhau – 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 tiếp thị hoặc bất kỳ tài liệu tùy chỉnh nào mà không cần cài đặt bất kỳ phần mềm của bên thứ ba nào trên máy chủ của bạn. Tất cả các công việc nặng nhọc – phân tích mẫu, liên kết dữ liệu, kết xuất 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í cơ sở hạ tầng.

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

  • Thời gian chạy không cần cài đặt – SDK là một lớp bao bọc mỏng xung quanh Assembly Cloud REST API, vì vậy bạn chỉ cần Node12+ và một gói npm.

  • Đa nền tảng – hoạt động giống nhau trên Windows, macOS, Linux hoặc bên trong các container.

  • Bảo mật – mọi giao tiếp đều được mã hóa qua TLS và xác thực được thực hiện bằng App SID và App Key cá nhân của bạn.

  • 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 tác vụ Mail-Merge hàng loạt 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 điểm cuối REST; SDK Node.js chỉ đơn giản hóa việc xây dựng yêu cầu và xử lý phản hồi.

Quy trình làm việc đ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 giữ chỗ 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 một 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 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 quy 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ột mảng byte, lưu cục bộ hoặc truyền trực tiếp đến máy khách.

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

Các tính năng của GroupDocs.Assembly Cloud API

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

Liên kết dữ liệu theo 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ác công thức và thao tác dữ liệu tuần tự

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

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

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

Trộn thư để gửi hàng loạt thư cá nhân hóa

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

Đoạn mã dưới đây minh họa một quy trình hoàn chỉnh: tải lên 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 mẫu DOCX lên GroupDocs Cloud Storage.
  2. Đọc tệp dữ liệu JSON chứa các giá trị cần hợp nhất.
  3. Cấu hình AssembleOptions – chọn định dạng đầu ra và liên kết 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 nào được hỗ trợ).
// 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 SDK cho các ngôn ngữ khác:

  Tiếng Việt