Node.js SDK สำหรับการประกอบเอกสารและการสร้างรายงาน

บูรณาการความสามารถในการประกอบเอกสารอันทรงพลังลงในแอปพลิเคชัน Node ของคุณโดยใช้ 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
เริ่มทดลองใช้งานฟรี

GroupDocs.Assembly Cloud คือบริการ REST ที่ได้รับการจัดการอย่างเต็มรูปแบบ ช่วยให้นักพัฒนาสามารถสร้างเอกสารที่มีรูปแบบสมบูรณ์และพร้อมพิมพ์จากเทมเพลตที่นำกลับมาใช้ใหม่ได้และแหล่งข้อมูลภายนอก

แพลตฟอร์มนี้รองรับรูปแบบไฟล์ต้นฉบับและไฟล์เป้าหมายที่หลากหลาย ตั้งแต่ไฟล์ Microsoft Office แบบคลาสสิก (DOCX, XLSX, PPTX) ไปจนถึง PDF, HTML, OpenDocument และรูปแบบกราฟิกอีกมากมาย ช่วยให้คุณสร้างสัญญา ใบแจ้งหนี้ รายงาน โบรชัวร์การตลาด หรือเอกสารที่กำหนดเองใดๆ ได้โดยไม่ต้องติดตั้งซอฟต์แวร์จากบุคคลที่สามบนเซิร์ฟเวอร์ของคุณเอง งานหนักทั้งหมด เช่น การแยกวิเคราะห์เทมเพลต การผูกข้อมูล การเรนเดอร์ภาพ การสร้างบาร์โค้ด การประเมินสูตร และการแปลงไฟล์ จะดำเนินการบนคลาวด์ ซึ่งช่วยให้มั่นใจได้ถึงผลลัพธ์ที่สอดคล้องกันในทุกระบบปฏิบัติการและลดต้นทุนโครงสร้างพื้นฐาน

ทำไมต้องใช้ Node.js SDK?

  • รันไทม์ไม่ต้องติดตั้ง – SDK นี้เป็น wrapper แบบบางที่หุ้ม Assembly Cloud REST API คุณจึงต้องการเพียง Node12+ และแพ็กเกจ npm เท่านั้น
  • ข้ามแพลตฟอร์ม – ทำงานแบบเดียวกันบน Windows, macOS, Linux หรือภายในคอนเทนเนอร์
  • ปลอดภัย – การสื่อสารทั้งหมดถูกเข้ารหัสผ่าน TLS และการตรวจสอบสิทธิ์จะดำเนินการด้วย App SID และ App Key ส่วนตัวของคุณ
  • ปรับขนาดได้ – บริการคลาวด์สามารถจัดการคำขอเอกสารเดียว รวมถึงงาน Mail-Merge แบบกลุ่มที่มีปริมาณมาก
  • ขยายได้ – สามารถใช้ API เดียวกันนี้จากภาษาใดก็ได้ที่สามารถเรียกใช้ REST endpoints ได้ 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. รับไฟล์ประกอบ เป็นอาร์เรย์ไบต์ บันทึกลงในเครื่อง หรือสตรีมไปยังไคลเอนต์โดยตรง

ตัวอย่างต่อไปนี้ (แสดงในส่วน คุณสมบัติเพิ่มเติม) สาธิตแต่ละขั้นตอนเหล่านี้ในโค้ดตัวอย่างที่กะทัดรัดและพร้อมใช้งานจริง

ฟีเจอร์ GroupDocs.Assembly Cloud API

สร้างเอกสารจากเทมเพลตโดยใช้ REST API บนคลาวด์

การผูกข้อมูลสไตล์ LINQ สำหรับแหล่ง XML และ JSON

แทรกภาพ แผนภูมิ และเนื้อหาเอกสารภายนอก

ตารางและรายการแบบไดนามิกจากข้อมูลอาร์เรย์

เพิ่มไฮเปอร์ลิงก์ บุ๊กมาร์ก และไฟล์แนบอีเมล

ใช้สูตรและการดำเนินการข้อมูลแบบลำดับ

บล็อกเนื้อหาแบบมีเงื่อนไข (IF‑ELSE) ในเทมเพลต

สร้างบาร์โค้ด (QR, Code128 ฯลฯ)

ตั้งค่าสีพื้นหลังสำหรับผลลัพธ์ HTML

การผสานจดหมายสำหรับจดหมายส่วนตัวแบบเป็นกลุ่ม

สร้างรายงานใน 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);

Support and Learning Resources

GroupDocs.Assembly Cloud ยังเสนอ SDK สำหรับภาษาอื่นๆ อีกด้วย:

  แบบไทย