MCPcopy
hub / github.com/AlistGo/alist / getFiles

Method getFiles

drivers/aliyundrive_share/util.go:96–141  ·  view source on GitHub ↗
(fileId string)

Source from the content-addressed store, hash-verified

94}
95
96func (d *AliyundriveShare) getFiles(fileId string) ([]File, error) {
97 files := make([]File, 0)
98 data := base.Json{
99 "image_thumbnail_process": "image/resize,w_160/format,jpeg",
100 "image_url_process": "image/resize,w_1920/format,jpeg",
101 "limit": 200,
102 "order_by": d.OrderBy,
103 "order_direction": d.OrderDirection,
104 "parent_file_id": fileId,
105 "share_id": d.ShareId,
106 "video_thumbnail_process": "video/snapshot,t_1000,f_jpg,ar_auto,w_300",
107 "marker": "first",
108 }
109 for data["marker"] != "" {
110 if data["marker"] == "first" {
111 data["marker"] = ""
112 }
113 var e ErrorResp
114 var resp ListResp
115 res, err := base.RestyClient.R().
116 SetHeader("x-share-token", d.ShareToken).
117 SetHeader(CanaryHeaderKey, CanaryHeaderValue).
118 SetResult(&resp).SetError(&e).SetBody(data).
119 Post("https://api.alipan.com/adrive/v3/file/list")
120 if err != nil {
121 return nil, err
122 }
123 log.Debugf("aliyundrive share get files: %s", res.String())
124 if e.Code != "" {
125 if e.Code == "AccessTokenInvalid" || e.Code == "ShareLinkTokenInvalid" {
126 err = d.getShareToken()
127 if err != nil {
128 return nil, err
129 }
130 return d.getFiles(fileId)
131 }
132 return nil, errors.New(e.Message)
133 }
134 data["marker"] = resp.NextMarker
135 files = append(files, resp.Items...)
136 }
137 if len(files) > 0 && d.DriveId == "" {
138 d.DriveId = files[0].DriveId
139 }
140 return files, nil
141}

Callers 1

listMethod · 0.95

Calls 4

getShareTokenMethod · 0.95
PostMethod · 0.80
SetHeaderMethod · 0.80
StringMethod · 0.45

Tested by

no test coverage detected