更新redis重试三次,http方法兼容ragflow格式

This commit is contained in:
Cold
2026-01-13 17:44:14 +08:00
committed by 张斌
parent aa3063c1de
commit 1fe3f127c3
3 changed files with 34 additions and 59 deletions

View File

@@ -53,6 +53,8 @@ func RouteRegister(controllers []interface{}) {
}
go Httpserver.Run()
}
// doRequest 统一HTTP请求处理DELETE用ContentJson发送bodygconv.Struct增加err检查
func doRequest(ctx context.Context, method string, url string, headers map[string]string, target any, data ...any) (err error) {
err = utils.ValidStructPtr(target)
if err != nil {
@@ -65,6 +67,9 @@ func doRequest(ctx context.Context, method string, url string, headers map[strin
} else {
client.SetHeader("Authorization", g.RequestFromCtx(ctx).GetHeader("Authorization"))
}
if method == http.MethodDelete && len(data) > 0 { // DELETE请求显式用ContentJson序列化body
client = client.ContentJson()
}
response, err := client.DoRequest(ctx, method, url, data...)
if err != nil {
return
@@ -73,9 +78,13 @@ func doRequest(ctx context.Context, method string, url string, headers map[strin
result := response.ReadAll()
resultStrut := &ghttp.DefaultHandlerResponse{}
gconv.Struct(result, &resultStrut)
if err = gconv.Struct(result, &resultStrut); err != nil { // 修复增加err检查
return errors.New("响应解析失败: " + err.Error())
}
if resultStrut.Code == 200 || resultStrut.Code == 0 {
gconv.Struct(resultStrut.Data, target)
if err = gconv.Struct(resultStrut.Data, target); err != nil { // 修复增加err检查
return errors.New("数据解析失败: " + err.Error())
}
} else {
err = errors.New(resultStrut.Message)
}