Merge branch 'tyqy12/main'
This commit is contained in:
@@ -240,7 +240,7 @@ func (s *OpenAIGatewayService) GetAccessToken(ctx context.Context, account *Acco
|
|||||||
|
|
||||||
func (s *OpenAIGatewayService) shouldFailoverUpstreamError(statusCode int) bool {
|
func (s *OpenAIGatewayService) shouldFailoverUpstreamError(statusCode int) bool {
|
||||||
switch statusCode {
|
switch statusCode {
|
||||||
case 401, 403, 429, 529:
|
case 401, 402, 403, 429, 529:
|
||||||
return true
|
return true
|
||||||
default:
|
default:
|
||||||
return statusCode >= 500
|
return statusCode >= 500
|
||||||
@@ -454,6 +454,10 @@ func (s *OpenAIGatewayService) handleErrorResponse(ctx context.Context, resp *ht
|
|||||||
statusCode = http.StatusBadGateway
|
statusCode = http.StatusBadGateway
|
||||||
errType = "upstream_error"
|
errType = "upstream_error"
|
||||||
errMsg = "Upstream authentication failed, please contact administrator"
|
errMsg = "Upstream authentication failed, please contact administrator"
|
||||||
|
case 402:
|
||||||
|
statusCode = http.StatusBadGateway
|
||||||
|
errType = "upstream_error"
|
||||||
|
errMsg = "Upstream payment required: insufficient balance or billing issue"
|
||||||
case 403:
|
case 403:
|
||||||
statusCode = http.StatusBadGateway
|
statusCode = http.StatusBadGateway
|
||||||
errType = "upstream_error"
|
errType = "upstream_error"
|
||||||
|
|||||||
@@ -39,6 +39,10 @@ func (s *RateLimitService) HandleUpstreamError(ctx context.Context, account *Acc
|
|||||||
// 认证失败:停止调度,记录错误
|
// 认证失败:停止调度,记录错误
|
||||||
s.handleAuthError(ctx, account, "Authentication failed (401): invalid or expired credentials")
|
s.handleAuthError(ctx, account, "Authentication failed (401): invalid or expired credentials")
|
||||||
return true
|
return true
|
||||||
|
case 402:
|
||||||
|
// 支付要求:余额不足或计费问题,停止调度
|
||||||
|
s.handleAuthError(ctx, account, "Payment required (402): insufficient balance or billing issue")
|
||||||
|
return true
|
||||||
case 403:
|
case 403:
|
||||||
// 禁止访问:停止调度,记录错误
|
// 禁止访问:停止调度,记录错误
|
||||||
s.handleAuthError(ctx, account, "Access forbidden (403): account may be suspended or lack permissions")
|
s.handleAuthError(ctx, account, "Access forbidden (403): account may be suspended or lack permissions")
|
||||||
|
|||||||
Reference in New Issue
Block a user