GroupDocs.Assembly Cloud SDK for Go를 사용하면 복잡한 타사 라이브러리 없이도 모든 Go 애플리케이션에 강력한 문서 생성 기능을 내장할 수 있습니다. 이 서비스는 완전히 클라우드 기반이며 간단한 REST API를 통해 통신합니다. 즉, 인터넷 연결과 API 자격 증명만 있으면 문서 생성을 시작할 수 있습니다.
일반적인 워크플로는 세 가지 논리적 단계로 구성됩니다.
이러한 접근 방식을 통해 계약서, 송장, 운송장, 판매 제안서 및 기타 비즈니스에 중요한 문서를 실시간으로 생성할 수 있습니다. 또한 개인화된 편지 일괄 생성, 바코드 생성, HTML 배경 스타일 지정, 이메일 첨부 파일 생성을 위한 메일 병합 기능을 지원합니다. 모든 작업은 SSL/TLS 암호화 및 API 키 인증을 통해 보호되므로 민감한 데이터가 클라우드에 안전하게 유출되지 않습니다.
중요한 작업은 클라우드에서 이루어지므로 SDK는 Go를 실행할 수 있는 모든 운영 체제(Windows, macOS, Linux)에서 작동하며 표준 go get 설치 단계만 필요합니다. 추가 소프트웨어나 기본 Office 설치가 필요 없으며, 복잡한 파일 형식을 수동으로 처리할 필요도 없습니다. 클라우드 서비스는 이러한 모든 복잡성을 추상화하여 비즈니스 로직에 집중할 수 있도록 해줍니다.
아래 스니펫은 Go를 사용하여 템플릿을 업로드하고, 데이터 소스를 읽고, Assembly API를 호출하여 문서를 생성하는 방법을 보여줍니다.
단계
config.json에서 구성을 로드합니다.AssembleOptions에 템플릿 경로와 원하는 출력 형식을 설정합니다.AssembleDocument를 호출하고 어셈블된 파일을 받습니다.import (
"os"
"io/ioutil"
"github.com/groupdocs-assembly-cloud/groupdocs-assembly-cloud-go/api"
"github.com/groupdocs-assembly-cloud/groupdocs-assembly-cloud-go/api/models"
)
// 1. 구성 초기화
config, _ := models.NewConfiguration("config.json")
assemblyApi, ctx, _ := api.NewAPIClient(config)
// 2. 템플릿 업로드
fileName := "Input1.docx"
requestFileContent, _ := os.Open(fileName)
uploadReq := &models.UploadFileRequest{
FileContent: requestFileContent,
Path: ToStringPointer(fileName),
}
_, _, _ = assemblyApi.UploadFile(ctx, uploadReq)
// 3. 데이터 소스 읽기
dataFile := "Input2.docx" // XML 또는 JSON 형식 가능
data, _ := ioutil.ReadFile(dataFile)
// 4. 어셈블 옵션 준비
templateInfo := api.TemplateFileInfo{FilePath: fileName}
assembleOptions := api.AssembleOptions{
TemplateFileInfo: &templateInfo,
SaveFormat: "docx",
ReportData: string(data),
}
// 5. 문서 생성
output, err := assemblyApi.AssemblyApi.AssembleDocument(ctx, assembleOptions)
if err != nil {
// 오류 처리
}
// `output`에는 생성된 문서가 포함됩니다.