本文介绍如何使用简单上传。
简单上传的完整代码请参见GitHub。
上传字符串
以下代码用于上传字符串:
package main
import (
"fmt"
"os"
"strings"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
func main() {
// 创建OSSClient实例。
client, err := oss.New("<yourEndpoint>", "<yourAccessKeyId>", "<yourAccessKeySecret>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 获取存储空间。
bucket, err := client.Bucket("<yourBucketName>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 上传字符串。
err = bucket.PutObject("<yourObjectName>", strings.NewReader("yourObjectValue"))
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
}
上传Byte数组
以下代码用于上传Byte数组:
package main
import (
"fmt"
"os"
"bytes"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
func main() {
// 创建OSSClient实例。
client, err := oss.New("<yourEndpoint>", "<yourAccessKeyId>", "<yourAccessKeySecret>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 获取存储空间。
bucket, err := client.Bucket("<yourBucketName>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 上传Byte数组。
err = bucket.PutObject("<yourObjectName>", bytes.NewReader([]byte("yourObjectValueByteArrary")))
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
}
上传文件流
以下代码用于上传文件流:
package main
import (
"fmt"
"os"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
func main() {
// 创建OSSClient实例。
client, err := oss.New("<yourEndpoint>", "<yourAccessKeyId>", "<yourAccessKeySecret>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 获取存储空间。
bucket, err := client.Bucket("<yourBucketName>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 读取本地文件。
fd, err := os.Open("<yourLocalFile>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
defer fd.Close()
// 上传文件流。
err = bucket.PutObject("<yourObjectName>", fd)
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
}
上传本地文件
以下代码用于上传本地文件:
package main
import (
"fmt"
"os"
"github.com/aliyun/aliyun-oss-go-sdk/oss"
)
func main() {
// 创建OSSClient实例。
client, err := oss.New("<yourEndpoint>", "<yourAccessKeyId>", "<yourAccessKeySecret>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 获取存储空间。
bucket, err := client.Bucket("<yourBucketName>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
// 上传本地文件。
err = bucket.PutObjectFromFile("<yourObjectName>", "<yourLocalFile>")
if err != nil {
fmt.Println("Error:", err)
os.Exit(-1)
}
}