Documentation ¶
Index ¶
- Constants
- Variables
- func DefaultHTTPStatusHandler(ctx context.Context, resp *http.Response) (*http.Response, error)
- func NewHTTPClient(ctx context.Context) *http.Client
- func NoOpHTTPStatusHandler(_ context.Context, resp *http.Response) (*http.Response, error)
- type HTTPClientFactory
- type HTTPRequestExecutor
- type HTTPResponseError
- type HTTPStatusHandler
Constants ¶
const (
// MWNamespace - HTTP Middleware 식별자
MWNamespace = "mw-http"
)
Variables ¶
var ( // ErrInvalidStatusCode - Response의 StatusCode 가 200이나 201이 아닌 경우에 반환할 기본 오류 ErrInvalidStatusCode = errors.New("Invalid status code") )
Functions ¶
func DefaultHTTPStatusHandler ¶
DefaultHTTPStatusHandler - Request/Response 기준으로 StatusCode를 처리하는 기본 HTTPStatusHandler
func NewHTTPClient ¶
NewHTTPClient - 기본 HTTP Client 생성
Types ¶
type HTTPClientFactory ¶
HTTPClientFactory - 지정한 Context 기반에서 동작하는 http client 생성을 위한 함수 정의
type HTTPRequestExecutor ¶
HTTPRequestExecutor - 지정한 Context 기반에서 HTTP를 사용해서 Backend와 내부 API 들과 통신을 위한 함수 정의
func DefaultHTTPRequestExecutor ¶
func DefaultHTTPRequestExecutor(hcf HTTPClientFactory) HTTPRequestExecutor
DefaultHTTPRequestExecutor - 지정한 HTTPClientFactory를 통해서 HTTPRequestExecutor 생성
type HTTPResponseError ¶
type HTTPResponseError struct { Code int `json:"http_status_code"` Msg string `json:"http_body,omitempty"` Path string `json:"http_path"` // contains filtered or unexported fields }
HTTPResponseError - DetailedHTTPStatusHandler 처리 후에 반환되는 오류 구조 정의 - responseError interface 구현체
func (HTTPResponseError) StatusCode ¶
func (r HTTPResponseError) StatusCode() int
StatusCode - 발생한 오류 코드 반환
type HTTPStatusHandler ¶
HTTPStatusHandler - Response Code 처리를 위한 함수 정의
func DetailedHTTPStatusHandler ¶
func DetailedHTTPStatusHandler(next HTTPStatusHandler, name string) HTTPStatusHandler
DetailedHTTPStatusHandler - Request/Response 기준으로 발생한 오류에 정보를 상세하게 처리하기 위한 HTTPStatusHandler
func GetHTTPStatusHandler ¶
func GetHTTPStatusHandler(bConf *config.BackendConfig) HTTPStatusHandler
GetHTTPStatusHandler - Backend를 호출한 후의 Response State 처리 - "mw-http" Middleware 설정에 "return_error_details" 설정이 된 경우에는 DetailedHTTPStatusHandler를 사용 (내부적으로 DefaultHTTPStatusHandler 호출) - 그외는 DefaultHTTPStatusHandler 사용