2.5.2 #12
@@ -485,10 +485,9 @@ struct OpenRouterImageGenerationResponse: Codable {
|
||||
|
||||
struct OpenRouterErrorResponse: Codable {
|
||||
let error: ErrorDetail
|
||||
|
||||
|
||||
struct ErrorDetail: Codable {
|
||||
let message: String
|
||||
let type: String?
|
||||
let code: String?
|
||||
}
|
||||
}
|
||||
|
||||
@@ -347,8 +347,16 @@ class OpenRouterProvider: AIProvider {
|
||||
}
|
||||
|
||||
guard httpResponse.statusCode == 200 else {
|
||||
Log.api.error("OpenRouter stream HTTP \(httpResponse.statusCode)")
|
||||
continuation.finish(throwing: ProviderError.unknown("HTTP \(httpResponse.statusCode)"))
|
||||
var errorBody = ""
|
||||
for try await line in bytes.lines { errorBody += line }
|
||||
if let errorData = errorBody.data(using: .utf8),
|
||||
let errorResponse = try? JSONDecoder().decode(OpenRouterErrorResponse.self, from: errorData) {
|
||||
Log.api.error("OpenRouter stream HTTP \(httpResponse.statusCode): \(errorResponse.error.message)")
|
||||
continuation.finish(throwing: ProviderError.unknown(errorResponse.error.message))
|
||||
} else {
|
||||
Log.api.error("OpenRouter stream HTTP \(httpResponse.statusCode)")
|
||||
continuation.finish(throwing: ProviderError.unknown("HTTP \(httpResponse.statusCode)"))
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user