문서 조립 및 보고서 생성을 위한 Node.js SDK

GroupDocs.Assembly Cloud REST API를 사용하여 강력한 문서 조립 기능을 Node 애플리케이션에 통합하세요.

  • 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는 Assembly Cloud REST API를 감싸는 씬 래퍼(thin wrapper)이므로 Node.js 12 이상 버전과 npm 패키지만 있으면 됩니다.
  • 크로스 플랫폼 – Windows, macOS, Linux 또는 컨테이너 내부에서 동일하게 작동합니다.
  • 안전성 – 모든 통신은 TLS를 통해 암호화되며, 인증은 개인 앱 SID 및 앱 키로 수행됩니다.
  • 확장성 – 클라우드 서비스는 단일 문서 요청뿐만 아니라 대량 일괄 메일 병합 작업도 처리할 수 있습니다.
  • 확장성 – REST 엔드포인트를 호출할 수 있는 모든 언어에서 동일한 API를 사용할 수 있습니다. Node.js SDK는 요청 생성 및 응답 처리를 간소화합니다.

Node.js 애플리케이션의 일반적인 워크플로우

  1. 플레이스홀더 필드와 조건 블록, 루프 또는 바코드 태그와 같은 선택적 프로그래밍 구문을 포함하는 템플릿(DOCX, PPTX 등)을 준비합니다.
  2. 템플릿에 병합할 값을 제공하는 XML 또는 JSON 형식의 데이터 소스를 생성합니다.
  3. SDK의 uploadFile 메서드를 사용하여 GroupDocs Cloud Storage에 템플릿을 업로드합니다.
  4. AssembleOptions 구성 - 템플릿 경로, 데이터 소스, 원하는 출력 형식(PDF, DOCX, HTML 등) 및 추가 설정(예: 바코드 생성, 배경색)을 지정합니다.
  5. assembleDocument 호출 - SDK가 서버에서 어셈블리 프로세스를 트리거하는 단일 HTTP 요청을 전송합니다.
  6. 어셈블된 파일을 바이트 배열로 수신하거나 로컬에 저장하거나 클라이언트로 직접 스트리밍합니다.

다음 예제(추가 기능 섹션 참조)는 이러한 각 단계를 프로덕션 환경에 바로 적용 가능한 간결한 코드 조각으로 보여줍니다.

GroupDocs.Assembly Cloud API 기능

클라우드 REST API를 사용하여 템플릿에서 문서 생성

XML 및 JSON 소스에 대한 LINQ 스타일 데이터 바인딩

이미지, 차트 및 외부 문서 콘텐츠 삽입

배열 데이터의 동적 테이블 및 목록

하이퍼링크, 북마크 및 이메일 첨부 파일 추가

수식 및 순차적 데이터 작업 적용

템플릿의 조건부 콘텐츠 블록(IF‑ELSE)

바코드(QR, Code128 등)를 생성합니다.

HTML 출력에 대한 배경색 설정

일괄 개인화된 편지를 위한 메일 병합

Node.js에서 보고서 생성

아래 스니펫은 전체 흐름을 보여줍니다. 템플릿 업로드, JSON 데이터 파일 읽기, 어셈블리 요청 구성, 어셈블리된 문서 수신입니다.

단계

  1. DOCX 템플릿을 GroupDocs 클라우드 저장소에 업로드합니다.
  2. 병합할 값이 포함된 JSON 데이터 파일을 읽습니다.
  3. AssembleOptions구성합니다. 출력 형식을 선택하고 데이터를 바인딩합니다.
  4. assembleDocument호출하여 보고서를 생성합니다.
  5. 반환된 바이트 배열을 PDF(또는 지원되는 형식)로 저장합니다.
// 앱 SID 및 앱 키로 대체
const { AssemblyApi, AssembleDocumentRequest, AssembleOptions, TemplateFileInfo, model } = require("groupdocs-assembly-cloud");
const fs = require("fs");
const path = require("path");

// 권한 부여 자리 표시자
const assemblyApi = new AssemblyApi(".#-.#-.#-.#-.#", "......");

// 1️⃣ 템플릿 파일 업로드
const templatePath = "Input1.docx";
const uploadRequest = new model.UploadFileRequest({
fileContent: fs.createReadStream(templatePath),
path: templatePath
});
await assemblyApi.uploadFile(uploadRequest);

// 2️⃣ 데이터 소스(JSON) 읽기
const dataPath = "Input2.docx";
const reportData = fs.readFileSync(dataPath, "utf8");

// 3️⃣ 어셈블리 옵션 설정
const assembleOptions = new AssembleOptions({
saveFormat: "pdf",
reportData: reportData,
templateFileInfo: new TemplateFileInfo({filePath: templatePath })
});

// 4️⃣ 어셈블 요청 생성 및 전송
const request = new AssembleDocumentRequest({ assembleOptions });
const result = await assemblyApi.assembleDocument(request);

// 5️⃣ 결과 문서 저장
const outputPath = path.join(__dirname, "GeneratedReport.pdf");
fs.writeFileSync(outputPath, result.body);

console.log("보고서가 성공적으로 생성되었습니다:", outputPath);

Support and Learning Resources

GroupDocs.Assembly Cloud는 다른 언어에 대한 SDK도 제공합니다.

  한국어