MCPcopy Create free account
hub / github.com/OpenListTeam/OpenList / request

Method request

drivers/febbox/util.go:27–67  ·  view source on GitHub ↗
(url string, method string, callback base.ReqCallback, resp interface{})

Source from the content-addressed store, hash-verified

25}
26
27func (d *FebBox) request(url string, method string, callback base.ReqCallback, resp interface{}) ([]byte, error) {
28 req := base.RestyClient.R()
29 // 使用oauth2 获取 access_token
30 token, err := d.oauth2Token.Token()
31 if err != nil {
32 return nil, err
33 }
34 req.SetAuthScheme(token.TokenType).SetAuthToken(token.AccessToken)
35
36 if callback != nil {
37 callback(req)
38 }
39 if resp != nil {
40 req.SetResult(resp)
41 }
42 var e ErrResp
43 req.SetError(&e)
44 res, err := req.Execute(method, url)
45 if err != nil {
46 return nil, err
47 }
48
49 switch e.ErrorCode {
50 case 0:
51 return res.Body(), nil
52 case 1:
53 return res.Body(), nil
54 case -10001:
55 if e.ServerName != "" {
56 // access_token 过期
57 if err = d.refreshTokenByOAuth2(); err != nil {
58 return nil, err
59 }
60 return d.request(url, method, callback, resp)
61 } else {
62 return nil, errors.New(e.Error())
63 }
64 default:
65 return nil, errors.New(e.Error())
66 }
67}
68
69func (d *FebBox) getFilesList(id string) ([]File, error) {
70 if d.PageSize <= 0 {

Callers 7

getFilesMethod · 0.95
getDownloadLinkMethod · 0.95
makeDirMethod · 0.95
moveMethod · 0.95
renameMethod · 0.95
copyMethod · 0.95
removeMethod · 0.95

Calls 3

refreshTokenByOAuth2Method · 0.95
ErrorMethod · 0.95
TokenMethod · 0.45

Tested by

no test coverage detected