rest

package
v0.0.0-...-417840b Latest Latest
Warning

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

Go to latest
Published: Jun 16, 2021 License: AGPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MysAppVersion = "2.7.0"
	DsSalt        = "14bmu1mz0yuljprsfgpvjh3ju2ni468r"
	MysClientType = "5"
)

Variables

This section is empty.

Functions

func IsApplicationErr

func IsApplicationErr(err error) bool

Types

type Config

type Config struct {
	Cookie []*http.Cookie
	Qid    int64
}

func NewConfig

func NewConfig(ck []*http.Cookie) *Config

type GameType

type GameType jsoniter.Number
const (
	NoGame  GameType = "0"
	Honkai3 GameType = "1"
	Genshin GameType = "2"
	Honkai2 GameType = "3"
	WeiDing GameType = "4"
	DaBieYe GameType = "5"
)

func FromGidStr

func FromGidStr(s string) GameType

func (GameType) Name

func (gt GameType) Name() string

type Interface

type Interface interface {
	Verb(verb string) *Request
	Post() *Request
	Get() *Request
	Put() *Request
	Delete() *Request
	Head() *Request

	Cookies() []*http.Cookie
}

type RESTClient

type RESTClient struct {
	// contains filtered or unexported fields
}

func NewRESTClient

func NewRESTClient(base url.URL, cfg *Config) *RESTClient

func (*RESTClient) Cookies

func (c *RESTClient) Cookies() []*http.Cookie

func (*RESTClient) Delete

func (c *RESTClient) Delete() *Request

func (*RESTClient) Get

func (c *RESTClient) Get() *Request

func (*RESTClient) Head

func (c *RESTClient) Head() *Request

func (*RESTClient) NextRequestID

func (c *RESTClient) NextRequestID() uint64

return the next request ID. Auto incremental.

func (*RESTClient) Post

func (c *RESTClient) Post() *Request

func (*RESTClient) Put

func (c *RESTClient) Put() *Request

func (*RESTClient) Verb

func (c *RESTClient) Verb(verb string) *Request

type Request

type Request struct {
	// contains filtered or unexported fields
}

func (*Request) Body

func (r *Request) Body(obj interface{}) *Request

overrides the BodyKV

func (*Request) BodyKV

func (r *Request) BodyKV(k string, v interface{}) *Request

k-v request body. Auto marshall to json

func (*Request) Do

func (r *Request) Do() *Result

func (*Request) GID

func (r *Request) GID(id GameType) *Request

func (*Request) Header

func (r *Request) Header(k, v string) *Request

set request header

func (*Request) ParamAdd

func (r *Request) ParamAdd(k, v string) *Request

func (*Request) ParamSet

func (r *Request) ParamSet(k, v string) *Request

func (*Request) Path

func (r *Request) Path(path string) *Request

func (*Request) Use

func (r *Request) Use(o RequestOptions) *Request

type RequestOptions

type RequestOptions interface {
	Apply(r *Request) *Request
}

type Result

type Result struct {
	// contains filtered or unexported fields
}

func (*Result) Error

func (r *Result) Error() error

优先返回 runtime error. 其次检查 application level error. 例如 对于 retcode != 0 的响应, 返回 retcode: message 作为错误信息

func (*Result) Into

func (r *Result) Into(obj runtime.Object) error

只返回 runtime error. 不检查 application error. 例如 对于 retcode != 0 的情况不做检查

Jump to

Keyboard shortcuts

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