Refactor: cleanup

- Introduce tracing
- Introduce cobra / viper framework
- Introduce resty client
- Seperate files in api/ and bot/
- Trim unused functions
This commit is contained in:
2025-12-12 23:51:48 +08:00
parent 344176063b
commit cb11672817
15 changed files with 575 additions and 466 deletions

33
api/getImages.go Normal file
View File

@@ -0,0 +1,33 @@
package api
import (
"net/http"
"strconv"
"github.com/Penguin-71630/meme-bot-frontend-dc/tracing"
"go.uber.org/zap"
)
func (c *Client) GetImages(
search string,
limit, page int,
) (ImagesResponse, error) {
var res ImagesResponse
resp, err := c.client.R().
SetResult(&res).
SetQueryParam("search", search).
SetQueryParam("limit", strconv.Itoa(limit)).
SetQueryParam("page", strconv.Itoa(page)).
Get("/api/images")
if err != nil || resp.StatusCode() != http.StatusOK {
tracing.Logger.Ctx(resp.Request.Context()).
Error("failed to get api images",
zap.String("search", search),
zap.Int("limit", limit),
zap.Int("page", page),
zap.Error(err))
return ImagesResponse{}, err
}
return res, nil
}