Browse Source

增加根据前缀查找Object的接口

gitlink
Sydonian 11 months ago
parent
commit
9c214b3f8a
2 changed files with 36 additions and 9 deletions
  1. +0
    -8
      main.go
  2. +36
    -1
      sdks/storage/cdsapi/object.go

+ 0
- 8
main.go View File

@@ -32,19 +32,12 @@ func test1(url string) {
return
}

partLen, err := strconv.ParseInt(os.Args[3], 10, 64)
if err != nil {
fmt.Println(err)
return
}

startTime := time.Now()
obj, err := cli.Object().Download(cdsapi.ObjectDownload{
UserID: 1,
ObjectID: 470790,
Offset: 0,
Length: &openLen,
PartSize: partLen,
})
if err != nil {
fmt.Println(err)
@@ -75,7 +68,6 @@ func test2(url string) {
UserID: 1,
ObjectID: 27151,
Offset: 0,
PartSize: 100000000,
// Length: &openLen,
})



+ 36
- 1
sdks/storage/cdsapi/object.go View File

@@ -25,6 +25,42 @@ func (c *Client) Object() *ObjectService {
}
}

const ObjectListPath = "/object/list"

type ObjectList struct {
UserID cdssdk.UserID `form:"userID" binding:"required"`
PackageID cdssdk.PackageID `form:"packageID" binding:"required"`
PathPrefix string `form:"pathPrefix" binding:"required"`
}
type ObjectListResp struct {
Objects []cdssdk.Object `json:"objects"`
}

func (c *ObjectService) List(req ObjectList) (*ObjectListResp, error) {
url, err := url.JoinPath(c.baseURL, ObjectListPath)
if err != nil {
return nil, err
}

resp, err := http2.GetForm(url, http2.RequestParam{
Query: req,
})
if err != nil {
return nil, err
}

jsonResp, err := ParseJSONResponse[response[ObjectListResp]](resp)
if err != nil {
return nil, err
}

if jsonResp.Code == errorcode.OK {
return &jsonResp.Data, nil
}

return nil, jsonResp.ToError()
}

const ObjectUploadPath = "/object/upload"

type ObjectUpload struct {
@@ -101,7 +137,6 @@ type ObjectDownload struct {
ObjectID cdssdk.ObjectID `form:"objectID" json:"objectID" binding:"required"`
Offset int64 `form:"offset" json:"offset,omitempty"`
Length *int64 `form:"length" json:"length,omitempty"`
PartSize int64 `form:"partSize" json:"partSize,omitempty"`
}
type DownloadingObject struct {
Path string


Loading…
Cancel
Save