client_generic

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Mar 30, 2023 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CommonResponse

func CommonResponse[RES any]() client.ResponseBodyCheck

func CustomizeGet

func CustomizeGet[RES GetDataInterface[T], T any](setParams client.SetParams) func(url string) (*T, error)

Deprecated

func GetSubData

func GetSubData[RES GetDataInterface[T], T any](url string) (*T, error)

func SimpleGet

func SimpleGet[RES any](url string) (*RES, error)

Types

type GetDataInterface

type GetDataInterface[T any] interface {
	GetData() *T
}

type RequestWrapper

type RequestWrapper[RES any] client.Request

RequestWrapper ...

func NewGetRequest

func NewGetRequest[RES any](url string) *RequestWrapper[RES]

func NewRequest

func NewRequest[RES any](url, method string) *RequestWrapper[RES]

func (*RequestWrapper[RES]) AddHeader

func (req *RequestWrapper[RES]) AddHeader(k, v string) *RequestWrapper[RES]

func (*RequestWrapper[RES]) ContentType

func (req *RequestWrapper[RES]) ContentType(contentType client.ContentType) *RequestWrapper[RES]

func (*RequestWrapper[RES]) DisableLog

func (req *RequestWrapper[RES]) DisableLog() *RequestWrapper[RES]

func (*RequestWrapper[RES]) Do

func (r *RequestWrapper[RES]) Do(req any) (*RES, error)

Do create a HTTP request

func (*RequestWrapper[RES]) Get

func (r *RequestWrapper[RES]) Get(url string) (*RES, error)

func (*RequestWrapper[RES]) Post

func (r *RequestWrapper[RES]) Post(url string, param any) (*RES, error)

func (*RequestWrapper[RES]) ResponseHandler

func (req *RequestWrapper[RES]) ResponseHandler(handler func([]byte) ([]byte, error)) *RequestWrapper[RES]

func (*RequestWrapper[RES]) RetryTimes

func (req *RequestWrapper[RES]) RetryTimes(times int) *RequestWrapper[RES]

func (*RequestWrapper[RES]) SetHeader

func (req *RequestWrapper[RES]) SetHeader(header client.Header) *RequestWrapper[RES]

func (*RequestWrapper[RES]) SetLogger

func (req *RequestWrapper[RES]) SetLogger(logger client.LogCallback) *RequestWrapper[RES]

func (*RequestWrapper[RES]) Timeout

func (req *RequestWrapper[RES]) Timeout(timeout time.Duration) *RequestWrapper[RES]

func (*RequestWrapper[RES]) WithClient

func (req *RequestWrapper[RES]) WithClient(c *http.Client) *RequestWrapper[RES]

type ResponseBody

type ResponseBody[RES any] struct {
	Status  int    `json:"status"`
	Data    RES    `json:"data"`
	Message string `json:"message"`
}

func (*ResponseBody[RES]) CheckError

func (res *ResponseBody[RES]) CheckError() error

type SetParams

type SetParams[RES any] func(req *RequestWrapper[RES]) *RequestWrapper[RES]

type SubDataRequest

type SubDataRequest[RES GetDataInterface[T], T any] RequestWrapper[RES]

func NewSubDataRequestParams

func NewSubDataRequestParams[RES GetDataInterface[T], T any](url, method string) *SubDataRequest[RES, T]

func (*SubDataRequest[RES, T]) Do

func (r *SubDataRequest[RES, T]) Do(req any) (*RES, error)

Do create a HTTP request

func (*SubDataRequest[RES, T]) Get

func (req *SubDataRequest[RES, T]) Get(url string) (*T, error)

func (*SubDataRequest[RES, T]) Origin

func (req *SubDataRequest[RES, T]) Origin() *client.Request

func (*SubDataRequest[RES, T]) OriginWrapper

func (req *SubDataRequest[RES, T]) OriginWrapper() *RequestWrapper[GetDataInterface[T]]

Jump to

Keyboard shortcuts

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