fix: reject for wrong status code

This commit is contained in:
ckt1031 2023-07-27 11:10:32 +08:00
parent c7c3b9d326
commit 22f4419b85
2 changed files with 7 additions and 1 deletions

View File

@ -61,6 +61,9 @@ func testChannel(channel *model.Channel, request ChatRequest) (error, *OpenAIErr
return err, nil return err, nil
} }
defer resp.Body.Close() defer resp.Body.Close()
if resp.StatusCode != http.StatusOK {
return errors.New(fmt.Sprintf("status code %d", resp.StatusCode)), nil
}
isStream := strings.HasPrefix(resp.Header.Get("Content-Type"), "text/event-stream") isStream := strings.HasPrefix(resp.Header.Get("Content-Type"), "text/event-stream")
@ -119,7 +122,7 @@ func testChannel(channel *model.Channel, request ChatRequest) (error, *OpenAIErr
if responseText == "" { if responseText == "" {
return errors.New("Empty response"), nil return errors.New("Empty response"), nil
} }
} else { } else if channel.AllowNonStreaming == common.ChannelAllowNonStreamEnabled {
var response TextResponse var response TextResponse
err = json.NewDecoder(resp.Body).Decode(&response) err = json.NewDecoder(resp.Body).Decode(&response)
if err != nil { if err != nil {

View File

@ -266,6 +266,9 @@ func relayTextHelper(c *gin.Context, relayMode int) *OpenAIErrorWithStatusCode {
if err != nil { if err != nil {
return errorWrapper(err, "close_request_body_failed", http.StatusInternalServerError) return errorWrapper(err, "close_request_body_failed", http.StatusInternalServerError)
} }
if resp.StatusCode != http.StatusOK {
return errorWrapper(nil, "bad_status_code", resp.StatusCode)
}
var textResponse TextResponse var textResponse TextResponse
isStream := strings.HasPrefix(resp.Header.Get("Content-Type"), "text/event-stream") isStream := strings.HasPrefix(resp.Header.Get("Content-Type"), "text/event-stream")
var streamResponseText string var streamResponseText string