From ba9cb083cfa7c33ab5864fd0862c398898af8799 Mon Sep 17 00:00:00 2001 From: yusing Date: Sun, 17 Aug 2025 01:50:26 +0800 Subject: [PATCH] fix(api): ErrorResponse no longer includes ANSI escape sequeneces --- internal/api/types/error.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/internal/api/types/error.go b/internal/api/types/error.go index 138bb65a..98b60e5f 100644 --- a/internal/api/types/error.go +++ b/internal/api/types/error.go @@ -1,5 +1,11 @@ package apitypes +import ( + "errors" + + "github.com/yusing/go-proxy/internal/gperr" +) + type ErrorResponse struct { Message string `json:"message"` Error string `json:"error,omitempty" extensions:"x-nullable"` @@ -13,6 +19,13 @@ type serverError struct { // Error returns a generic error response func Error(message string, err ...error) ErrorResponse { if len(err) > 0 { + var gpErr gperr.Error + if errors.As(err[0], &gpErr) { + return ErrorResponse{ + Message: message, + Error: string(gpErr.Plain()), + } + } return ErrorResponse{ Message: message, Error: err[0].Error(),