client

package
v0.0.0-...-8d8ec1c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 18, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// MWNamespace - HTTP Middleware 식별자
	MWNamespace = "mw-http"
)

Variables

View Source
var (
	// ErrInvalidStatusCode - Response의 StatusCode 가 200이나 201이 아닌 경우에 반환할 기본 오류
	ErrInvalidStatusCode = errors.New("Invalid status code")
)

Functions

func DefaultHTTPStatusHandler

func DefaultHTTPStatusHandler(ctx context.Context, resp *http.Response) (*http.Response, error)

DefaultHTTPStatusHandler - Request/Response 기준으로 StatusCode를 처리하는 기본 HTTPStatusHandler

func NewHTTPClient

func NewHTTPClient(ctx context.Context) *http.Client

NewHTTPClient - 기본 HTTP Client 생성

func NoOpHTTPStatusHandler

func NoOpHTTPStatusHandler(_ context.Context, resp *http.Response) (*http.Response, error)

NoOpHTTPStatusHandler - NO-OP 처리가 설정된 경우의 HTTPSTatusHandler (별도 처리가 필요없는 경우)

Types

type HTTPClientFactory

type HTTPClientFactory func(ctx context.Context) *http.Client

HTTPClientFactory - 지정한 Context 기반에서 동작하는 http client 생성을 위한 함수 정의

type HTTPRequestExecutor

type HTTPRequestExecutor func(ctx context.Context, req *http.Request) (*http.Response, error)

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) Error

func (r HTTPResponseError) Error() string

Error - 발생한 오류 메시지 반환

func (HTTPResponseError) Name

func (r HTTPResponseError) Name() string

Name - 발생한 오류 명 반환

func (HTTPResponseError) StatusCode

func (r HTTPResponseError) StatusCode() int

StatusCode - 발생한 오류 코드 반환

type HTTPStatusHandler

type HTTPStatusHandler func(context.Context, *http.Response) (*http.Response, error)

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 사용

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL