このトピックでは、オブジェクトを圧縮ローカルファイルにダウンロードする方法について説明します。
GZIP形式で圧縮されたローカルファイルにオブジェクトをダウンロードできます。 Bucket.GetObjectおよびBucket.GetObjectToFile操作を呼び出して、オブジェクトを圧縮されたローカルファイルにダウンロードできます。
例
次のコードは、圧縮されたローカルファイルにオブジェクトをダウンロードする方法の例を示しています。
パッケージメイン
import (import (import)
"fmt"
"os"
「github.com/aliyun/aliyun-oss-go-sdk/oss」
)
func main() {
// Create an OSSClient instance.
// バケットが配置されているリージョンのエンドポイントを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、エンドポイントをhttps://oss-cn-hangzhou.aliyuncs.comに設定します。 実際のエンドポイントを指定します。
// Alibaba CloudアカウントのAccessKeyペアには、すべてのAPI操作に対する権限があります。 これらの資格情報を使用してObject Storage Service (OSS) で操作を実行することは、リスクの高い操作です。 RAMユーザーを使用してAPI操作を呼び出したり、ルーチンのO&Mを実行することを推奨します。RAMユーザーを作成するには、RAMコンソールにログインします。
client, err := oss.New("yourEndpoint", "yourAccessKeyId", "yourAccessKeySecret")
if err! =nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// yourBucketNameをバケットの名前に設定します。
bucket, err := client.Bucket("yourBucketName")
if err! =nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 圧縮されたローカルファイルにオブジェクトをダウンロードします。
// yourObjectNameをオブジェクトの完全パスに設定します。 オブジェクトのフルパスにバケット名を含めることはできません。
err = bucket.GetObjectToFile("yourObjectName", "LocalFile.gzip", oss.AcceptEncoding("gzip"))
if err! =nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
}
参考資料
圧縮されたローカルファイルにオブジェクトをダウンロードするために使用される完全なサンプルコードについては、GitHubをご覧ください。