go-zero对接minio
时间: 2023-07-03 14:27:15 浏览: 168
可以使用go-zero的`client`包提供的`RestyClient`来访问minio API。具体步骤如下:
1. 安装`github.com/go-resty/resty`依赖:
```bash
go get github.com/go-resty/resty
```
2. 使用`RestyClient`发送HTTP请求:
```go
package main
import (
"fmt"
"github.com/go-resty/resty/v2"
"github.com/tal-tech/go-zero/core/logx"
)
func main() {
client := resty.New()
client.SetHostURL("http://127.0.0.1:9000")
client.SetHeader("Content-Type", "application/json")
client.SetHeader("Authorization", "Bearer <your-minio-access-key>")
client.SetQueryParam("format", "json")
resp, err := client.R().
SetBody([]byte(`{"key":"testobject.txt","value":"Hello world!"}`)).
Put("/minio/bucketname/testobject.txt")
if err != nil {
logx.Error(err)
return
}
fmt.Println(resp.StatusCode(), string(resp.Body()))
}
```
上面的示例代码展示了如何使用`RestyClient`上传一个对象到minio。其中:
- `SetHostURL`设置minio的URL地址;
- `SetHeader`设置请求头中的`Content-Type`和`Authorization`;
- `SetQueryParam`设置查询参数;
- `SetBody`设置请求体;
- `Put`发送PUT请求。
你可以根据minio提供的API文档,使用`RestyClient`发出不同的HTTP请求来对接minio的API。
阅读全文