Parcourir la source

fix: streamline error handling in OpenRouter response processing

CaIon il y a 5 mois
Parent
commit
7fe969c2ce
1 fichiers modifiés avec 6 ajouts et 5 suppressions
  1. 6 5
      relay/channel/openai/relay-openai.go

+ 6 - 5
relay/channel/openai/relay-openai.go

@@ -200,12 +200,13 @@ func OpenaiHandler(c *gin.Context, info *relaycommon.RelayInfo, resp *http.Respo
 			logger.LogError(c, fmt.Sprintf("openrouter enterprise response success=false, data: %s", enterpriseResponse.Data))
 			return nil, types.NewOpenAIError(fmt.Errorf("openrouter response success=false"), types.ErrorCodeBadResponseBody, http.StatusInternalServerError)
 		}
-	} else {
-		err = common.Unmarshal(responseBody, &simpleResponse)
-		if err != nil {
-			return nil, types.NewOpenAIError(err, types.ErrorCodeBadResponseBody, http.StatusInternalServerError)
-		}
 	}
+
+	err = common.Unmarshal(responseBody, &simpleResponse)
+	if err != nil {
+		return nil, types.NewOpenAIError(err, types.ErrorCodeBadResponseBody, http.StatusInternalServerError)
+	}
+
 	if oaiError := simpleResponse.GetOpenAIError(); oaiError != nil && oaiError.Type != "" {
 		return nil, types.WithOpenAIError(*oaiError, resp.StatusCode)
 	}