diff --git a/server/rest.go b/server/rest.go index 83a631ea5..f682c0011 100644 --- a/server/rest.go +++ b/server/rest.go @@ -1872,7 +1872,7 @@ func (s *RestServer) getTypedUserItemFeedback(request *restful.Request, response itemId := request.PathParameter("item-id") if feedback, err := s.DataClient.GetUserItemFeedback(ctx, userId, itemId, feedbackType); err != nil { InternalServerError(response, err) - } else if feedbackType == "" { + } else if feedbackType == "" || len(feedback) == 0 { Text(response, "{}") } else { Ok(response, feedback[0]) diff --git a/storage/cache/redis.go b/storage/cache/redis.go index 68265b7e2..888baf3bb 100644 --- a/storage/cache/redis.go +++ b/storage/cache/redis.go @@ -475,6 +475,9 @@ func decodeCategory(s string) (string, error) { if err != nil { return "", errors.Trace(err) } + if len(b) == 0 { + return "", nil + } return string(b[1:]), nil } @@ -496,6 +499,7 @@ func decodeCategories(s string) ([]string, error) { if err != nil { return nil, errors.Trace(err) } + // category = "" is also a valid category categories = append(categories, category) } return categories, nil