QingStor™ 对象存储新增 6 种语言 SDK

两味真火
 两味真火
发布于 2016年12月15日
收藏 12

为了让更多的用户能够快速便捷的使用 QingStor™ 对象存储服务,我们在原有 Python SDK 的基础上,新增 Go、Ruby、Swift、Java、JavaScript 及 PHP, 6 种语言的 SDK。

目前 QingStor™ 对象存储服务的 SDK 已覆盖主流编程语言和开发平台,极大降低了用户使用 QingStor 对象存储服务的成本。

更重要的是, 我们开源了 QingStor™ 对象存储的 API Specifications (OpenAPI 格式,亦称 Swagger 2.0 格式),及 SDK 生成工具 Snips。在 Snips 的帮助下,开发者能够在短时间内开发出所需语言的 SDK。我们欢迎第三方开发者参与到 Snips 项目中,贡献其它语言的 SDK。

下面以 Go 语言 SDK 为例,演示如何使用 SDK 接入 QingStor™ 对象存储 。

1. 安装

可以直接使用 go get 安装:

$ go get -u github.com/yunify/qingstor-sdk-go

2. 初始化服务 

发起请求前需要初始化服务:

import (
   "github.com/yunify/qingstor-sdk-go/config"
   "github.com/yunify/qingstor-sdk-go/qingstor"
)  
configuration, err := config.New("ACCESS_KEY_ID", "SECRET_ACCESS_KEY")
qsService, err := service.Init(configuration)

3. 创建 Bucket 

初始化并创建 Bucket, 需要指定 Bucket 名称和所在 Zone:

bucket, err := qsService.Bucket("test-bucket", "pek3a")
putBucketOutput, err := bucket.Put()

4. 上传一个 Object 

// Open file
file, err := os.Open("~/Desktop/Screenshot.jpg")
defer file.Close()  
// Put object
output, err := bucket.PutObject(
    "Screenshot.jpg",
     &service.PutObjectInput{
         Body: file,
     },
 )
 // Print the HTTP status code.
 // Example: 201
fmt.Println(output.StatusCode)

5. 删除一个 Object 

 output, err := bucket.DeleteObject("Screenshot.jpg")
// Print the HTTP status code. 
// Example: 204 
fmt.Println(output.StatusCode)

稿源:  青云QingCloud

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:QingStor™ 对象存储新增 6 种语言 SDK
加载中

最新评论(2

notreami
notreami

引用来自“飘啊飘的瓶子”的评论

有本事cpp
汇编
飘啊飘的瓶子
飘啊飘的瓶子
有本事cpp
返回顶部
顶部