client

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: May 19, 2021 License: MIT Imports: 16 Imported by: 24

Documentation

Overview

Package client provides internal utilities for the twilio-go client library.

Copyright 2014 Alvaro J. Genial. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. nolint

Package form implements encoding and decoding of application/x-www-form-urlencoded data.

Copyright 2014 Alvaro J. Genial. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. nolint

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func EncodeToString

func EncodeToString(dst interface{}) (string, error)

EncodeToString encodes dst as a form and returns it as a string.

func EncodeToStringWith

func EncodeToStringWith(dst interface{}, d rune, e rune, z bool) (string, error)

EncodeToStringWith encodes dst as a form with delimiter d, escape e, keeping zero values if z, and returns it as a string.

func EncodeToValues

func EncodeToValues(dst interface{}) (url.Values, error)

EncodeToValues encodes dst as a form and returns it as Values.

func EncodeToValuesWith

func EncodeToValuesWith(dst interface{}, d rune, e rune, z bool) (url.Values, error)

EncodeToValuesWith encodes dst as a form with delimiter d, escape e, keeping zero values if z, and returns it as Values.

Types

type BaseClient added in v0.5.0

type BaseClient interface {
	GetAccountSid() string
	Post(path string, bodyData url.Values, headers map[string]interface{}) (*http.Response, error)
	Get(path string, queryData interface{}, headers map[string]interface{}) (*http.Response, error)
	Delete(path string, nothing interface{}, headers map[string]interface{}) (*http.Response, error)
}

type Client

type Client struct {
	*Credentials
	HTTPClient *http.Client
	BaseURL    string
	Edge       string
	Region     string
	AccountSid string
}

Client encapsulates a standard HTTP backend with authorization.

func (*Client) BuildHost added in v0.6.0

func (c *Client) BuildHost(rawHost string) string

BuildHost builds the target host string taking into account region and edge configurations.

func (Client) Delete

func (c Client) Delete(path string, nothing interface{}, headers map[string]interface{}) (*http.Response, error)

Delete performs a DELETE request on the object at the provided URI in the context of the Request's BaseURL with the provided data as parameters.

func (Client) Get

func (c Client) Get(path string, queryData interface{}, headers map[string]interface{}) (*http.Response, error)

Get performs a GET request on the object at the provided URI in the context of the Request's BaseURL with the provided data as parameters.

func (Client) GetAccountSid added in v0.8.0

func (c Client) GetAccountSid() string

Returns the Account SID.

func (Client) Post

func (c Client) Post(path string, bodyData url.Values, headers map[string]interface{}) (*http.Response, error)

Post performs a POST request on the object at the provided URI in the context of the Request's BaseURL with the provided data as parameters.

func (Client) SendRequest

func (c Client) SendRequest(method string, rawURL string, queryParams interface{}, formData url.Values,
	headers map[string]interface{}) (*http.Response, error)

SendRequest verifies, constructs, and authorizes an HTTP request.

func (*Client) SetTimeout

func (c *Client) SetTimeout(timeout time.Duration)

SetTimeout sets the Timeout for HTTP requests.

type Credentials

type Credentials struct {
	Username string
	Password string
}

Credentials store user authentication credentials.

func NewCredentials added in v0.8.0

func NewCredentials(username string, password string) *Credentials

type Encoder

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

Encoder provides a way to encode to a Writer.

func NewEncoder

func NewEncoder(w io.Writer) *Encoder

NewEncoder returns a new form Encoder.

func (*Encoder) DelimitWith

func (e *Encoder) DelimitWith(r rune) *Encoder

DelimitWith sets r as the delimiter used for composite keys by Encoder e and returns the latter; it is '.' by default.

func (Encoder) Encode

func (e Encoder) Encode(dst interface{}) error

Encode encodes dst as form and writes it out using the Encoder's Writer.

func (*Encoder) EscapeWith

func (e *Encoder) EscapeWith(r rune) *Encoder

EscapeWith sets r as the escape used for delimiters (and to escape itself) by Encoder e and returns the latter; it is '\\' by default.

func (*Encoder) KeepZeros

func (e *Encoder) KeepZeros(z bool) *Encoder

KeepZeros sets whether Encoder e should keep zero (default) values in their literal form when encoding, and returns the former; by default zero values are not kept, but are rather encoded as the empty string.

Jump to

Keyboard shortcuts

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