(client opts)
(client client opts)
Creates new client
from opts
or creates a new client
from a client
,
copying it's settings and extra opts
. Returned client can be used with
request
.
Options:
:call-timeout
(in ms):read-timeout
(in ms):write-timeout
(in ms):connect-timeout
(in ms):protocols
- one of "http/1.0", "http/1.1", "h2", "h2_prior_knowledge", "quic", "spdy/3.1", "h3":dispatcher
: map of :executor
, :max-requests
, :max-requests-per-host
:connection-pool
: map of :max-idle-connections
, :keepalive-duration
(in ms):retry-on-connection-failure
:follow-redirects
:ssl-socket-factory
:follow-ssl-redirects
:add-network-interceptors
:add-interceptors
Creates new `client` from `opts` or creates a new `client` from a `client`, copying it's settings and extra `opts`. Returned client can be used with `request`. Options: * `:call-timeout` (in ms) * `:read-timeout` (in ms) * `:write-timeout` (in ms) * `:connect-timeout` (in ms) * `:protocols` - one of "http/1.0", "http/1.1", "h2", "h2_prior_knowledge", "quic", "spdy/3.1", "h3" * `:dispatcher` : map of `:executor`, `:max-requests`, `:max-requests-per-host` * `:connection-pool` : map of `:max-idle-connections`, `:keepalive-duration` (in ms) * `:retry-on-connection-failure` * `:follow-redirects` * `:ssl-socket-factory` * `:follow-ssl-redirects` * `:add-network-interceptors` * `:add-interceptors`
(connect request-map)
(connect client request-map)
Performs a CONNECT http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a CONNECT http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(def-http-method method)
(delete request-map)
(delete client request-map)
Performs a DELETE http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a DELETE http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(get request-map)
(get client request-map)
Performs a GET http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a GET http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(head request-map)
(head client request-map)
Performs a HEAD http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a HEAD http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(options request-map)
(options client request-map)
Performs a OPTIONS http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a OPTIONS http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(patch request-map)
(patch client request-map)
Performs a PATCH http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a PATCH http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(post request-map)
(post client request-map)
Performs a POST http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a POST http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(put request-map)
(put client request-map)
Performs a PUT http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a PUT http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
(request request-map)
(request client request-map)
Performs an HTTP request using the provided OkHttp client and a request map. Returns a Ring-style response map containing keys such as :status, :headers, :body.
Arguments:
client
(okhttp3.OkHttpClient): Optional, if not provided the default client is used.request-map
(map): Map describing request parameters.Supported keys in request-map
:
:method
- HTTP method keyword (:get, :post, etc), defaults to :get:url
- Absolute URL string (required):headers
- Map of header names to values:body
- Request body (string, bytes, stream, file, etc.):query-params
- Map of query parameters to add to URLOptions:
:throw-on-error
- If true (default), throws exception on 4xx/5xx. If false, returns response.:response-body-decoder
- Decoding strategy for :body: :byte-stream
(default, lazy raw bytes, must be consumed), :string
, :bytes
, :input-stream
(eager, safe to read/copy).Returns:
Example: (request {:method :get :url "https://httpbin.org/get"}) (request client {:method :post :url "https://api.com" :headers {"Content-Type" "application/json"} :body "{...}"})
Performs an HTTP request using the provided OkHttp client and a request map. Returns a Ring-style response map containing keys such as :status, :headers, :body. Arguments: * `client` (okhttp3.OkHttpClient): Optional, if not provided the default client is used. * `request-map` (map): Map describing request parameters. Supported keys in `request-map`: * `:method` - HTTP method keyword (:get, :post, etc), defaults to :get * `:url` - Absolute URL string (required) * `:headers` - Map of header names to values * `:body` - Request body (string, bytes, stream, file, etc.) * `:query-params` - Map of query parameters to add to URL Options: * `:throw-on-error` - If true (default), throws exception on 4xx/5xx. If false, returns response. * `:response-body-decoder` - Decoding strategy for :body: `:byte-stream` (default, lazy raw bytes, must be consumed), `:string`, `:bytes`, `:input-stream` (eager, safe to read/copy). Returns: * Ring response map: {:status int, :headers map, :body value} Example: (request {:method :get :url "https://httpbin.org/get"}) (request client {:method :post :url "https://api.com" :headers {"Content-Type" "application/json"} :body "{...}"})
(shutdown! client)
Closes all connections and releases resources for the provided OkHttpClient instance. This will:
Closes all connections and releases resources for the provided OkHttpClient instance. This will: - Evict all connections from the internal connection pool - Shutdown the underlying executor service - Close the cache, if present Call this when you are done with an OkHttpClient to avoid resource leaks.
(trace request-map)
(trace client request-map)
Performs a TRACE http request via client
, using request-map
as payload.
Returns a ring response map
Options:
:throw-on-error
- defaults to true
:response-body-decoder
- :byte-stream
(default, ensure it's consumed!),
:string
, :bytes
, :input-stream
(safe, eager, copy)
Performs a TRACE http request via `client`, using `request-map` as payload. Returns a ring response map Options: * `:throw-on-error` - defaults to true * `:response-body-decoder` - `:byte-stream` (default, ensure it's consumed!), `:string`, `:bytes`, `:input-stream` (safe, eager, copy)
cljdoc builds & hosts documentation for Clojure/Script libraries
Ctrl+k | Jump to recent docs |
← | Move to previous article |
→ | Move to next article |
Ctrl+/ | Jump to the search field |