mirror of
https://github.com/ultrasn0w/huso.git
synced 2025-12-14 05:39:52 +01:00
GET user
This commit is contained in:
37
knecht.go
37
knecht.go
@@ -54,30 +54,35 @@ func GetUserAnimeListBytes(username, status string) ([]byte, error) {
|
||||
return GetDataMal(userApiMal + username + "/animelist?limit=1000&status=" + status)
|
||||
}
|
||||
|
||||
func GetUserData(username string) (*UserJikan, []byte, error) {
|
||||
var user UserJikan
|
||||
body, err := GetUserBytesCached(username)
|
||||
if err != nil {
|
||||
return nil, body, err
|
||||
}
|
||||
err = json.Unmarshal(body, &user)
|
||||
return &user, body, err
|
||||
}
|
||||
|
||||
func GetUserBytesCached(username string) ([]byte, error) {
|
||||
func GetUserData(username string) (*User, []byte, error) {
|
||||
var user User
|
||||
data, err := userCache.Get(username)
|
||||
if err != nil {
|
||||
data, err = GetDataJikan(username)
|
||||
err = nil
|
||||
dataJikan, err := GetDataJikan(userApiJikan + username)
|
||||
if err != nil {
|
||||
return data, err
|
||||
return nil, nil, err
|
||||
}
|
||||
if strings.Contains(string(data), "BadResponseException") {
|
||||
return data, fmt.Errorf("user not found: %s", username)
|
||||
return nil, nil, fmt.Errorf("user not found: %s", username)
|
||||
}
|
||||
var userJikan UserJikan
|
||||
err = json.Unmarshal(dataJikan, &userJikan)
|
||||
if err != nil {
|
||||
return nil, nil, err
|
||||
}
|
||||
// convert to user
|
||||
user = UserConvert(&userJikan)
|
||||
data, err = json.Marshal(&user)
|
||||
if err != nil {
|
||||
return &user, data, err
|
||||
}
|
||||
userCache.Set(username, data)
|
||||
return data, err
|
||||
} else {
|
||||
err = json.Unmarshal(data, &user)
|
||||
}
|
||||
return data, err
|
||||
|
||||
return &user, data, err
|
||||
}
|
||||
|
||||
func GetSeasonDataAll() ([]Anime, []byte, error) {
|
||||
|
||||
Reference in New Issue
Block a user