Documentation
¶
Index ¶
- Variables
- func GetRequest(ctx context.Context) *request.Request
- type ApiResponseHook
- type ApiResponseNextHook
- type Executor
- func (v *Executor) ApiResponseHook(hook ApiResponseHook)
- func (v *Executor) DoRequest(req *request.Request) (response.Response, error)
- func (v *Executor) DoRequestCtx(ctx context.Context, req *request.Request) (response.Response, error)
- func (v *Executor) DoRequestCtxParser(ctx context.Context, req *request.Request, parser responseparser.Parser) (response.Response, error)
- func (v *Executor) HttpResponseHook(hook HttpResponseHook)
- func (v *Executor) ResetApiResponseHandlers()
- func (v *Executor) ResetHttpResponseHandlers()
- type HttpResponseHook
- type HttpResponseNextHook
Constants ¶
This section is empty.
Variables ¶
var (
DefaultResponseParser responseparser.Parser = &jsonresponseparser.JsonResponseParser{}
)
Functions ¶
Types ¶
type ApiResponseHook ¶
type ApiResponseHook func(next ApiResponseNextHook, res response.Response) error
type ApiResponseNextHook ¶
type Executor ¶
type Executor struct {
// HTTP клиент для отправки запросов.
// Вы можете задать свой клиент, настроив, например, прокси или KeepAlive соединение
HttpClient *http.Client
// Парсер ответа ВКонтакте. Можно переназначить для парсинга других форматов
ResponseParser responseparser.Parser
// contains filtered or unexported fields
}
Отвечает за выполнение API запросов ВКонтакте
func (*Executor) ApiResponseHook ¶
func (v *Executor) ApiResponseHook(hook ApiResponseHook)
Устанавливает хук для обработки ответа VK API
func (*Executor) DoRequest ¶
Выполняет запрос к 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