阿里云对象存储OSS Go SDK发布了,欢迎有兴趣的Go爱好者试用~~~

baiyubin · 2016-01-06 12:13:32 · 8470 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2016-01-06 12:13:32 的主题,其中的信息可能已经有所发展或是发生改变。

阿里云对象存储OSS提供的海量、安全和高可靠的云存储服务。存储容量和处理能力的弹性扩展,真正使您专注于核心业务,广泛的应用于海量数据存储与备份,数据加工与处理,内容加速分发,业务数据挖掘分析等多种业务场景。详细介绍见阿里云官网

本次发布的OSS Go SDK包含了丰富的功能,简洁的接口,详细的例子...

主要功能包括:

  • 简洁、丰富、易用的接口,如PutObject/GetObject/ListObjects;
  • 并发上传/下载;
  • 断点续传的上传/下载;
  • 全面支持STS/HTTPS/CNAME访问;
  • 详尽的示例,按照使用场景列出示例,看一眼就知道是您想要的;
  • 支持所有存储空间(bucket)所有管理接口。

安装方式:

go get github.com/aliyun/aliyun-oss-go-sdk/oss

使用方式:

import "github.com/aliyun/aliyun-oss-go-sdk/oss"

简单示例:

package main

import (
    "fmt"
    "io/ioutil"
    "strings"
    "github.com/aliyun/aliyun-oss-go-sdk/oss"
)

func main() {
    client, _ := oss.New("http://oss-cn-hangzhou.aliyuncs.com",
        "YourAccessKeyId",
        "YourAccessKeySecret")
    bucket, _ := client.Bucket("my-bucket")

    // 字符串上传下载
    err := bucket.PutObject("my-object-1", strings.NewReader("Hello Oss"))
    rd, err := bucket.GetObject("my-object-1")
    data, err := ioutil.ReadAll(rd)
    rd.Close()
    fmt.Println(string(data))

    // 文件上传下载
    err = bucket.PutObjectFromFile("my-object-2", "mypic.jpg")
    err = bucket.GetObjectToFile("my-object-2", "mynewpic.jpg")

    // 分片并发,断点续传上传/下载
    err = bucket.UploadFile("my-object-3", "mypic.jpg", 100*1024, oss.Routines(3), oss.Checkpoint(true, ""))
    err = bucket.DownloadFile("my-object-3", "mynewpic.jpg", 100*1024, oss.Routines(3), oss.Checkpoint(true, ""))

    // 查看Object
    lsRes, err := bucket.ListObjects()
    fmt.Println("my objects:", lsRes.Objects)

    // 上面的err都需要处理,此处略
    if err != nil {
        // TODO
    }
}

跃跃欲试了吧,Let’u go吧。

更多内容请访问:


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

8470 次点击  ∙  1 赞  
加入收藏 微博
1 回复  |  直到 2017-08-06 08:02:29
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传