func (dbx *apiImpl) TokenRevoke() (err error) { cli := dbx.Client req, err := http.NewRequest("POST", (*dropbox.Context)(dbx).GenerateURL("api", "auth", "token/revoke"), nil) if err != nil { return } if dbx.Config.AsMemberID != "" { req.Header.Set("Dropbox-API-Select-User", dbx.Config.AsMemberID) } if dbx.Config.Verbose { log.Printf("req: %v", req) } resp, err := cli.Do(req) if dbx.Config.Verbose { log.Printf("resp: %v", resp) } if err != nil { return } defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { return } if dbx.Config.Verbose { log.Printf("body: %s", body) } if resp.StatusCode == http.StatusOK { return } if resp.StatusCode == http.StatusConflict { var apiError TokenRevokeAPIError err = json.Unmarshal(body, &apiError) if err != nil { return } err = apiError return } var apiError dropbox.APIError if resp.StatusCode == http.StatusBadRequest { apiError.ErrorSummary = string(body) err = apiError return } err = json.Unmarshal(body, &apiError) if err != nil { return } err = apiError return }
func (dbx *apiImpl) GetAccount(arg *GetAccountArg) (res *BasicAccount, err error) { cli := dbx.Client if dbx.Config.Verbose { log.Printf("arg: %v", arg) } b, err := json.Marshal(arg) if err != nil { return } req, err := http.NewRequest("POST", (*dropbox.Context)(dbx).GenerateURL("api", "users", "get_account"), bytes.NewReader(b)) if err != nil { return } req.Header.Set("Content-Type", "application/json") if dbx.Config.AsMemberID != "" { req.Header.Set("Dropbox-API-Select-User", dbx.Config.AsMemberID) } if dbx.Config.Verbose { log.Printf("req: %v", req) } resp, err := cli.Do(req) if dbx.Config.Verbose { log.Printf("resp: %v", resp) } if err != nil { return } defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { return } if dbx.Config.Verbose { log.Printf("body: %s", body) } if resp.StatusCode == http.StatusOK { err = json.Unmarshal(body, &res) if err != nil { return } return } if resp.StatusCode == http.StatusConflict { var apiError GetAccountAPIError err = json.Unmarshal(body, &apiError) if err != nil { return } err = apiError return } var apiError dropbox.APIError if resp.StatusCode == http.StatusBadRequest { apiError.ErrorSummary = string(body) err = apiError return } err = json.Unmarshal(body, &apiError) if err != nil { return } err = apiError return }