executor

package
v0.4.0-alpha Latest Latest
Warning

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

Go to latest
Published: Nov 26, 2023 License: MIT Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

Functions

func GetRequest

func GetRequest(ctx context.Context) *request.Request

Возвращает объект запроса из контекста

Types

type ApiResponseHook

type ApiResponseHook func(next ApiResponseNextHook, res response.Response) error

type ApiResponseNextHook

type ApiResponseNextHook func(res response.Response) error

type Executor

type Executor struct {
	// HTTP клиент для отправки запросов.
	// Вы можете задать свой клиент, настроив, например, прокси или KeepAlive соединение
	HttpClient *http.Client
	// Парсер ответа ВКонтакте. Можно переназначить для парсинга других форматов
	ResponseParser responseparser.Parser
	// contains filtered or unexported fields
}

Отвечает за выполнение API запросов ВКонтакте

func New

func New() *Executor

func (*Executor) ApiResponseHook

func (v *Executor) ApiResponseHook(hook ApiResponseHook)

Устанавливает хук для обработки ответа VK API

func (*Executor) DoRequest

func (v *Executor) DoRequest(req *request.Request) (response.Response, error)

Выполняет запрос к VK API Используйте executor.DoRequestCtx(), если есть задача контролировать таймаут и контекст запроса

func (*Executor) DoRequestCtx

func (v *Executor) DoRequestCtx(ctx context.Context, req *request.Request) (response.Response, error)

Выполняет запрос к VK API.

func (*Executor) DoRequestCtxParser

func (v *Executor) DoRequestCtxParser(ctx context.Context, req *request.Request, parser responseparser.Parser) (response.Response, error)

Выполняет запрос к VK API. Используйте ctx для передачи значений в middleware или для создания таймаутов на выполнение запроса Вы можете задать свой собственный парсер ответа. Например, ВКонтакте поддерживает формат messagepack (users.get.msgpack) Возвращает ответ VK API. В случае, если возникла ошибка выоплнения HTTP запроса, то будет response.Response == nil. Если возникла ошибка при вызове метода API, вернется полный ответ сервера и информация об ошибке типа response.Error

func (*Executor) HttpResponseHook

func (v *Executor) HttpResponseHook(hook HttpResponseHook)

Устанавливает обработчик ответов сервера

func (*Executor) ResetApiResponseHandlers

func (v *Executor) ResetApiResponseHandlers()

Отчищает очередь из middleware API ответов

func (*Executor) ResetHttpResponseHandlers

func (v *Executor) ResetHttpResponseHandlers()

Отчищает очередь из обработчиков HTTP овтетов

type HttpResponseHook

type HttpResponseHook func(next HttpResponseNextHook, res *http.Response) error

type HttpResponseNextHook

type HttpResponseNextHook func(res *http.Response) error

Jump to

Keyboard shortcuts

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