Pustaka Go untuk membangun laporan yang sangat disesuaikan menggunakan REST API
Mulai Uji Coba GratisGroupDocs.Assembly Cloud SDK untuk Go memungkinkan Anda menyematkan kemampuan generasi dokumen yang kuat ke dalam aplikasi Go apa pun tanpa memerlukan pustaka pihak ketiga yang berat. Layanan ini sepenuhnya berbasis awan dan berkomunikasi melalui REST API sederhana, yang berarti Anda hanya memerlukan koneksi internet dan kredensial API Anda untuk mulai membuat dokumen.
Alur kerja tipikal terdiri dari tiga langkah logis:
Pendekatan ini memungkinkan pembuatan kontrak, faktur, manifest pengiriman, proposal penjualan, dan dokumen penting bisnis lainnya secara real‑time. Ia juga mendukung Mail Merge untuk pembuatan massal surat yang dipersonalisasi, generasi barcode, penataan latar HTML, dan pembuatan lampiran email. Semua operasi diamankan dengan enkripsi SSL/TLS dan otentikasi kunci API, memastikan data sensitif tidak pernah keluar dari awan tanpa perlindungan.
Karena proses berat terjadi di awan, SDK dapat berjalan pada semua sistem operasi yang dapat menjalankan Go (Windows macOS, Linux) dan hanya memerlukan langkah instalasi standar go get. Tidak diperlukan perangkat lunak tambahan, tidak ada instalasi native Office, dan tidak ada penanganan manual format file yang kompleks – layanan awan menyederhanakan semua kompleksitas tersebut, memungkinkan Anda fokus pada logika bisnis.
Potongan kode di bawah ini menunjukkan cara mengunggah templat, membaca sumber data, dan memanggil Assembly API untuk menghasilkan dokumen menggunakan Go.
Langkah
config.json.AssembleOptions dengan jalur templat dan format output yang diinginkan.AssembleDocument dan terima file yang telah dirakit.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. Initialise configuration
config, _ := models.NewConfiguration("config.json")
assemblyApi, ctx, _ := api.NewAPIClient(config)
// 2. Upload template
fileName := "Input1.docx"
requestFileContent, _ := os.Open(fileName)
uploadReq := &models.UploadFileRequest{
FileContent: requestFileContent,
Path: ToStringPointer(fileName),
}
_, _, _ = assemblyApi.UploadFile(ctx, uploadReq)
// 3. Read data source
dataFile := "Input2.docx" // can be XML or JSON
data, _ := ioutil.ReadFile(dataFile)
// 4. Prepare assemble options
templateInfo := api.TemplateFileInfo{FilePath: fileName}
assembleOptions := api.AssembleOptions{
TemplateFileInfo: &templateInfo,
SaveFormat: "docx",
ReportData: string(data),
}
// 5. Generate document
output, err := assemblyApi.AssemblyApi.AssembleDocument(ctx, assembleOptions)
if err != nil {
// handle error
}
// `output` contains the generated document