Pustaka Go untuk membuat laporan yang sangat disesuaikan menggunakan REST API
Mulai Uji Coba GratisGroupDocs.Assembly Cloud SDK untuk Go memungkinkan Anda menyematkan kemampuan pembuatan dokumen yang canggih ke dalam aplikasi Go apa pun tanpa memerlukan pustaka pihak ketiga yang berat. Layanan ini sepenuhnya berbasis cloud dan berkomunikasi melalui REST API sederhana, yang berarti Anda hanya memerlukan koneksi internet dan kredensial API Anda untuk mulai membuat dokumen.
Alur kerja umumnya terdiri dari tiga langkah logis:
Pendekatan ini memungkinkan pembuatan kontrak, faktur, manifes pengiriman, proposal penjualan, dan dokumen penting bisnis lainnya secara real-time. Pendekatan ini juga mendukung Mail Merge untuk pembuatan surat personalisasi secara batch, pembuatan barcode, penataan gaya latar belakang HTML, dan pembuatan lampiran email. Semua operasi diamankan dengan enkripsi SSL/TLS dan autentikasi kunci API, memastikan bahwa data sensitif tidak pernah meninggalkan cloud tanpa perlindungan.
Karena proses yang berat dilakukan di cloud, SDK ini berfungsi di setiap sistem operasi yang dapat menjalankan Go (Windows, macOS, Linux) dan hanya memerlukan langkah instalasi standar go get. Tidak diperlukan perangkat lunak tambahan, instalasi Office asli, dan penanganan format file kompleks secara manual – layanan cloud mengabstraksi semua kerumitan tersebut, sehingga Anda dapat fokus pada logika bisnis.
Cuplikan kode di bawah ini menunjukkan cara mengunggah templat, membaca sumber data, dan memanggil API Assembly untuk menghasilkan dokumen menggunakan Go.
Langkah-langkah
config.json.AssembleOptions dengan jalur templat dan format keluaran yang diinginkan.AssembleDocument dan terima berkas rakitan.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