services

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Sep 9, 2024 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

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

Cookie data class that stores tokens required for calling HoYoLab endpoints.

func NewCookie

func NewCookie(ltokenV2 string, ltmidV2 string, ltuidV2 string) Cookie

Constructor.

func (Cookie) ParseCookie

func (cookie Cookie) ParseCookie() string

Converts cookie tokens into a string to be added into a request header. Each token is separated by semicolons. Similar to http.Request.AddCookie().

func (Cookie) Tokens

func (cookie Cookie) Tokens() []http.Cookie

Return all cookie tokens as an array.

type Handler

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

Base handler for dealing with HTTP request processes. This ranges from sending HTTP requests to HoYoLab endpoints, parsing responses, and setting cookies.

func NewHandler

func NewHandler() Handler

Constructor.

func (Handler) Send

func (handler Handler) Send(request Request, res any) error

Sends a HTTP request. Returns a generic map from the unmarshalled response. Specific retcode errors are handled by their respective clients.

type Request

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

HTTP request wrapper for holding parameters required for HoYoLab endpoints. Used by Handler to be parsed into a HTTP request.

type RequestBuilder

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

Request builder that defines a request structure using the builder pattern.

func NewRequest

func NewRequest(endpoint string, method string, cookie Cookie) *RequestBuilder

Constructor.

func (*RequestBuilder) AddBody

func (builder *RequestBuilder) AddBody(key string, value interface{}) *RequestBuilder

Add body.

func (*RequestBuilder) AddCookie

func (builder *RequestBuilder) AddCookie(cookie Cookie) *RequestBuilder

Add cookie to request header.

func (*RequestBuilder) AddDynamicSecret

func (builder *RequestBuilder) AddDynamicSecret(salt constants.DynamicSecret) *RequestBuilder

Add dynamic secret to request header.

func (*RequestBuilder) AddHeader

func (builder *RequestBuilder) AddHeader(key string, value string) *RequestBuilder

Add header.

func (*RequestBuilder) AddLanguage

func (builder *RequestBuilder) AddLanguage(language string) *RequestBuilder

Add language to request header.

func (*RequestBuilder) AddParam

func (builder *RequestBuilder) AddParam(key string, value string) *RequestBuilder

Add query parameter.

func (*RequestBuilder) AddReferer

func (builder *RequestBuilder) AddReferer(referer string) *RequestBuilder

Add referer to request header.

func (*RequestBuilder) Build

func (builder *RequestBuilder) Build() Request

Return built request instance.

Jump to

Keyboard shortcuts

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