Documentation ¶
Overview ¶
Package send defines a pure computations to compose HTTP request senders
Index ¶
- Constants
- func Params[T any](query T) http.Arrow
- func Send(data interface{}) http.Arrow
- type Authority
- type Header
- type HeaderConnection
- type HeaderContent
- func (h HeaderContent) ApplicationJSON(cat *http.Context) error
- func (h HeaderContent) Form(cat *http.Context) error
- func (h HeaderContent) HTML(cat *http.Context) error
- func (h HeaderContent) Is(value string) http.Arrow
- func (h HeaderContent) JSON(cat *http.Context) error
- func (h HeaderContent) Text(cat *http.Context) error
- func (h HeaderContent) TextHTML(cat *http.Context) error
- func (h HeaderContent) TextPlain(cat *http.Context) error
- type HeaderContentLength
- type HeaderTransferEncoding
- type Method
- type Segment
Constants ¶
const ( GET = Method("GET") POST = Method("POST") PUT = Method("PUT") DELETE = Method("DELETE") PATCH = Method("PATCH") )
List of supported built-in method constants
const ( Accept = HeaderContent("Accept") AcceptCharset = Header("Accept-Charset") AcceptEncoding = Header("Accept-Encoding") AcceptLanguage = Header("Accept-Language") Authorization = Header("Authorization") CacheControl = Header("Cache-Control") Connection = HeaderConnection("Connection") ContentEncoding = Header("Content-Encoding") ContentLength = HeaderContentLength("Content-Length") ContentType = HeaderContent("Content-Type") Cookie = Header("Cookie") Date = Header("Date") Host = Header("Host") IfMatch = Header("If-Match") IfModifiedSince = Header("If-Modified-Since") IfNoneMatch = Header("If-None-Match") IfRange = Header("If-Range") IfUnmodifiedSince = Header("If-Unmodified-Since") Origin = Header("Origin") Range = Header("Range") TransferEncoding = HeaderTransferEncoding("Transfer-Encoding") UserAgent = Header("User-Agent") Upgrade = Header("Upgrade") )
List of supported HTTP header constants https://en.wikipedia.org/wiki/List_of_HTTP_header_fields#Request_fields
Variables ¶
This section is empty.
Functions ¶
func Params ¶
Params appends query params to request URL. The arrow takes a struct and converts it to map[string]string. The function fails if input is not convertable to map of strings (e.g. nested struct).
func Send ¶
Send payload to destination URL. You can also use native Go data types (e.g. maps, struct, etc) as egress payload. The library implicitly encodes input structures to binary using Content-Type as a hint. The function fails if content type is not supported by the library.
The function accept a "classical" data container such as string, []bytes or io.Reader interfaces.
Types ¶
type Authority ¶ added in v1.1.0
type Authority string
Authority is part of URL, use the type to prevent escaping
type Header ¶
type Header string
Header defines HTTP headers to the request, use combinator to define multiple header values.
http.Do( ø.Header("User-Agent").Is("gurl"), ø.Header("Content-Type").Is(content), )
type HeaderConnection ¶ added in v1.3.0
type HeaderConnection Header
Lifecycle defines headers for connection management
type HeaderContent ¶ added in v1.3.0
type HeaderContent Header
Content defines headers for content negotiation
func (HeaderContent) ApplicationJSON ¶ added in v1.3.0
func (h HeaderContent) ApplicationJSON(cat *http.Context) error
ApplicationJSON defines header `???: application/json`
func (HeaderContent) Form ¶ added in v1.3.0
func (h HeaderContent) Form(cat *http.Context) error
Form defined Header `???: application/x-www-form-urlencoded`
func (HeaderContent) HTML ¶ added in v1.3.0
func (h HeaderContent) HTML(cat *http.Context) error
HTML defined Header `???: text/html`
func (HeaderContent) Is ¶ added in v1.3.0
func (h HeaderContent) Is(value string) http.Arrow
Is sets a literval value of HTTP header
func (HeaderContent) JSON ¶ added in v1.3.0
func (h HeaderContent) JSON(cat *http.Context) error
JSON defines header `???: application/json`
func (HeaderContent) Text ¶ added in v1.3.0
func (h HeaderContent) Text(cat *http.Context) error
Text defined Header `???: text/plain`
type HeaderTransferEncoding ¶ added in v1.3.0
type HeaderTransferEncoding Header
Header TransferEncoding
func (HeaderTransferEncoding) Chunked ¶ added in v1.3.0
func (h HeaderTransferEncoding) Chunked(cat *http.Context) error
Chunked defines header `Transfer-Encoding: chunked`