package worker import ( "StuAcaWorksAI/proto" "encoding/json" ) func GetGiteeAccessTokenByCode(code string, redirectURI string, clientID string, clientSecret string) (proto.GiteeOAuthTokenResponse, error) { req := proto.GiteeOAuthRequest{ ClientID: clientID, ClientSecret: clientSecret, Code: code, RedirectURI: redirectURI, GrantType: "authorization_code", } var resp proto.GiteeOAuthTokenResponse reqBytes, err := json.Marshal(req) if err != nil { return resp, err } url := "https://gitee.com/oauth/token" err2, respBytes := DoPostRequestJSON(url, reqBytes, nil) if err2 != nil { return resp, err2 } err = json.Unmarshal(respBytes, &resp) if err != nil { return resp, err } return resp, nil } func GetGiteeUserInfo(accessToken string) (proto.GitHubUserInfo, error) { url := "https://gitee.com/api/v5/user?access_token=" + accessToken var resp proto.GitHubUserInfo err2, respBytes := DoGetRequest(url, nil) if err2 != nil { return resp, err2 } err := json.Unmarshal(respBytes, &resp) if err != nil { return resp, err } return resp, nil } func GetGogsAccessTokenByCode() { } func GetGogsUserInfo() { }