Files
web_huakui_server/pub/common/recomapi/recomapi.go
T
rootandClaude Opus 4.7 85c0071fd8 feat: 从黄果 NET hgdjnet-server 9bfbafe 导入 HKDJ 官网后端
来源:hgdjnet-server 9bfbafe10d417deea959bd53117bc88a10e60a83
项目身份 HKDJ / JHA-216,独立官网仓库,Jenkins 守卫键 hkdjnet
测试目录 /server/hkdj_net,App/Web API 30331/30332

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-10-16 11:20:04 +08:00

37 lines
1.0 KiB
Go

package recomapi
import (
"fmt"
"hkdj-web-server/pub/common/log"
"hkdj-web-server/pub/common/srvdef"
"hkdj-web-server/pub/common/utils"
"net/http"
"strconv"
)
func GetRecomItems(url string, key string, userId int64, writeBack string, size int64) (
[]int64, *srvdef.SrvErr) {
reqUrl := fmt.Sprintf("%s/api/recommend/%d?n=%d&write-back=%s", url, userId, size, writeBack)
var resp []string
header := map[string]string{"X-API-Key": key}
code, err := utils.GetWithJResp(&resp, reqUrl, header, nil)
if err != nil {
log.Error("recomapi:GetRecomItems GetWithJResp failed",
log.Any("reqUrl", reqUrl), log.E(err))
return nil, srvdef.New(srvdef.Err, "", "")
}
if code != http.StatusOK {
log.Error("recomapi:GetRecomItems GetWithJResp code error.",
log.Any("reqUrl", reqUrl), log.Any("code", code))
return nil, srvdef.New(srvdef.Err, "", "")
}
itemIds := make([]int64, 0)
for _, v := range resp {
id, err := strconv.ParseInt(v, 10, 64)
if err == nil {
itemIds = append(itemIds, id)
}
}
return itemIds, nil
}