ragflow http请求 header处理
This commit is contained in:
22
http/http.go
22
http/http.go
@@ -58,19 +58,27 @@ func doRequest(ctx context.Context, method string, url string, headers map[strin
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
Httpclient.SetHeader("Authorization", g.RequestFromCtx(ctx).GetHeader("Authorization"))
|
||||
Httpclient.SetHeaderMap(headers)
|
||||
response, err := Httpclient.DoRequest(ctx, method, url, data)
|
||||
client := Httpclient
|
||||
if len(data) > 0 {
|
||||
client = Httpclient.Clone()
|
||||
}
|
||||
if len(headers) > 0 {
|
||||
client.SetHeaderMap(headers)
|
||||
} else {
|
||||
client.SetHeader("Authorization", g.RequestFromCtx(ctx).GetHeader("Authorization"))
|
||||
}
|
||||
response, err := client.DoRequest(ctx, method, url, data...)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
defer response.Close()
|
||||
result := response.ReadAll()
|
||||
resultStrut := &ghttp.DefaultHandlerResponse{}
|
||||
if err = gconv.Struct(result, &resultStrut); err != nil {
|
||||
err = errors.New(resultStrut.Message)
|
||||
} else if resultStrut.Code == 200 || resultStrut.Code == 0 {
|
||||
gconv.Struct(result, &resultStrut)
|
||||
if resultStrut.Code == 200 || resultStrut.Code == 0 {
|
||||
gconv.Struct(resultStrut.Data, target)
|
||||
} else {
|
||||
err = errors.New(resultStrut.Message)
|
||||
}
|
||||
return
|
||||
}
|
||||
@@ -87,6 +95,6 @@ func Put(ctx context.Context, url string, headers map[string]string, target any,
|
||||
return
|
||||
}
|
||||
func Delete(ctx context.Context, url string, headers map[string]string, target any, data ...any) (err error) {
|
||||
err = doRequest(ctx, http.MethodPut, url, headers, target, data)
|
||||
err = doRequest(ctx, http.MethodDelete, url, headers, target, data)
|
||||
return
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user