(resp http.ResponseWriter, err error)
| 519 | ) |
| 520 | |
| 521 | func (server *ApiServer) apiError(resp http.ResponseWriter, err error) bool { |
| 522 | obj, ok := err.(*ApiError) |
| 523 | if !ok && err != nil { |
| 524 | server.Logger.Warn().Err(err).Msg("Error did not include status code") |
| 525 | obj = &ApiError{err.Error(), http.StatusInternalServerError} |
| 526 | } |
| 527 | |
| 528 | if obj == nil { |
| 529 | return false |
| 530 | } |
| 531 | |
| 532 | data, err2 := json.Marshal(obj) |
| 533 | if err2 != nil { |
| 534 | server.Logger.Warn().Err(err2).Msg("Error json encoding error (╯°□°)╯︵ ┻━┻ ") |
| 535 | } |
| 536 | resp.Header().Set("Content-Type", "application/json") |
| 537 | http.Error(resp, string(data), obj.StatusCode) |
| 538 | |
| 539 | return true |
| 540 | } |
| 541 | |
| 542 | type proxyToxics struct { |
| 543 | *Proxy |
no test coverage detected