diff --git a/main.go b/main.go index 17d73b2..b3043dd 100644 --- a/main.go +++ b/main.go @@ -77,7 +77,15 @@ func mainLoop(queryList []string) { // fetching user info userInfo, err := requests.GetUserInfo(token, queryID) if err != nil { - log.Printf(red("Error: %v\n"), err) + if err.Error() == "token is invalid" { + newToken, err := requests.GetNewToken(queryID) + if err != nil { + log.Printf(red("Error: %v\n"), err) + } + tokenMap[queryID] = newToken + } else { + log.Printf(red("Error: %v\n"), err) + } } username := userInfo["username"] printText += fmt.Sprintf("---\n"+"["+bold(cyan("User"))+"] "+"%s\n", bold(green(username))) diff --git a/requests/requests.go b/requests/requests.go index cb0eab5..e1648a3 100644 --- a/requests/requests.go +++ b/requests/requests.go @@ -127,14 +127,7 @@ func GetUserInfo(token string, queryID string) (map[string]any, error) { } if tokenResponse.Message == "Token is invalid" { - fmt.Println("Token is invalid, getting a new token...") - newToken, err := GetNewToken(queryID) - if err != nil { - fmt.Println("Failed to get new token.") - return nil, err - } - fmt.Println("New token obtained, try again...") - return GetUserInfo(newToken, queryID) + return nil, fmt.Errorf("token is invalid") } else { fmt.Println("Failed to get user information.") return nil, fmt.Errorf("unexpected status code: %d", resp.StatusCode)