rest_http

package
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2023 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Request

type Request struct {
	*http.Request
	// contains filtered or unexported fields
}

Request реализует объект запроса

func (*Request) Auth

func (s *Request) Auth() json.Map

Auth возвращает словарь с данными об авторизации (при условии, что в заголовке Bearer указан токен и его удалось успешно расшифровать и распарсить)

func (*Request) Close

func (s *Request) Close()

Close закрывает все открытые ресурсы запоса (файлы)

func (*Request) Command

func (s *Request) Command() string

Возвращает путь (краткий url) запроса

func (*Request) Data

func (s *Request) Data() json.Map

Data возвращает словерь json запроса

func (*Request) File

func (s *Request) File(name string) (io.Reader, bool)

File возвращает файл, принятый в запросе multipart/form-data, если он существует

func (*Request) FileKeys

func (s *Request) FileKeys() []string

FileKeys возвращает все имена файлы, которые доступны в запросе

func (*Request) GenerateToken

func (s *Request) GenerateToken(data json.Map, expire int64) (string, error)

GenerateToken создает новый токен авторизации. expire - timestamp даты, после которой токен не будет действителен (если указан 0 - токен бессрочный)

func (*Request) IsAuth

func (s *Request) IsAuth() bool

IsAuth указывает, есть ли словарь авторизации или нет

func (*Request) IsForm

func (s *Request) IsForm() bool

// IsForm возарвщвет true, если в заголовке ContentType multipart/form-data

func (*Request) IsJSON

func (s *Request) IsJSON() bool

IsJSON возарвщвет true, если в заголовке ContentType application/json

func (*Request) ResponseError

func (s *Request) ResponseError(code int, err rest.IErrorArgs) rest.IResponse

func (*Request) ResponseSuccess

func (s *Request) ResponseSuccess(data json.Map, files map[string]io.ReadCloser) rest.IResponse

func (*Request) Root

func (s *Request) Root() any

type Response

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

Response реализует объект ответа

func NewResponse

func NewResponse() *Response

func ResponseError

func ResponseError(code int, err rest.IErrorArgs) *Response

func ResponseSuccess

func ResponseSuccess(data mjson.Map, files map[string]io.ReadCloser) *Response

func (*Response) Close

func (s *Response) Close()

Close закрывает ресурсы ответа после завершения отдачи серверу

func (*Response) FileSet

func (s *Response) FileSet(name string, file io.ReadCloser)

FileSet устанавливает файл в словаре файлов по ключу

func (*Response) IsError

func (s *Response) IsError() bool

func (*Response) KeySet

func (s *Response) KeySet(key string, val any)

KeySet устанавливает значение в словаре ответа по ключу

func (*Response) Send

func (s *Response) Send(writer any) rest.IErrorArgs

Send отправляет запрос серверу

type Rest

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

func New

func New(app rest.IApplication) *Rest

func (*Rest) App

func (s *Rest) App() rest.IApplication

func (*Rest) Close

func (s *Rest) Close() error

Close

func (*Rest) Listen

func (s *Rest) Listen(timeout time.Duration) (err error)

Listen start server in other goroutine

func (*Rest) TokenGenerate

func (s *Rest) TokenGenerate(m mjson.Map, expire int64) (string, error)

Jump to

Keyboard shortcuts

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