error.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package dto
  2. type OpenAIError struct {
  3. Message string `json:"message"`
  4. Type string `json:"type"`
  5. Param string `json:"param"`
  6. Code any `json:"code"`
  7. }
  8. type OpenAIErrorWithStatusCode struct {
  9. Error OpenAIError `json:"error"`
  10. StatusCode int `json:"status_code"`
  11. LocalError bool
  12. }
  13. type GeneralErrorResponse struct {
  14. Error OpenAIError `json:"error"`
  15. Message string `json:"message"`
  16. Msg string `json:"msg"`
  17. Err string `json:"err"`
  18. ErrorMsg string `json:"error_msg"`
  19. Header struct {
  20. Message string `json:"message"`
  21. } `json:"header"`
  22. Response struct {
  23. Error struct {
  24. Message string `json:"message"`
  25. } `json:"error"`
  26. } `json:"response"`
  27. }
  28. func (e GeneralErrorResponse) ToMessage() string {
  29. if e.Error.Message != "" {
  30. return e.Error.Message
  31. }
  32. if e.Message != "" {
  33. return e.Message
  34. }
  35. if e.Msg != "" {
  36. return e.Msg
  37. }
  38. if e.Err != "" {
  39. return e.Err
  40. }
  41. if e.ErrorMsg != "" {
  42. return e.ErrorMsg
  43. }
  44. if e.Header.Message != "" {
  45. return e.Header.Message
  46. }
  47. if e.Response.Error.Message != "" {
  48. return e.Response.Error.Message
  49. }
  50. return ""
  51. }