No matching definitions.

http/client

src/http/client.tur
defn

http-get

(http-get [url : cstr] :)

perform an HTTP GET request.

urlfull URL, e.g. "https://api.example.com/items"

result<:int> -- ok(response-handle) or err(:cstr message)

(let [r (http-get "https://httpbin.org/get")]
    (when (ok? r) (println (response-body (ok-val r)))))

Since: P5

defn

http-post

(http-post [url : cstr body : cstr] :)

perform an HTTP POST request with a string body.

urlfull URL
bodyrequest body string

result<:int> -- ok(response-handle) or err(:cstr message)

(http-post "https://httpbin.org/post" "{\"x\":1}")

Since: P5

defn

http-put

(http-put [url : cstr body : cstr] :)

perform an HTTP PUT request with a string body.

urlfull URL
bodyrequest body string

result<:int> -- ok(response-handle) or err(:cstr message)

Since: P5

defn

http-delete

(http-delete [url : cstr] :)

perform an HTTP DELETE request.

urlfull URL

result<:int> -- ok(response-handle) or err(:cstr message)

Since: P5

defn

http-request

(http-request [req : int] :)

perform a fully custom HTTP request from a request handle.

req:int request handle from (request method url body headers)

result<:int> -- ok(response-handle) or err(:cstr message)

(let [req (request "POST" "https://api.example.com" "{}" (nil-value))]
    (http-request req))

Since: P5

defn

http-result-free

(http-result-free [r ptr<void>] :)

release a result returned by http-get & co.

rthe ptr<void> result from http-get, http-post, http-put,
http-delete or http-request

:void

(let [r (http-get "http://127.0.0.1:8080/")
        s (if (ok? r) (response-status (ok-val r)) 0)]
    (http-result-free r)
    s)

Since: 0.2.0

Internal definitions
__req-method
__req-url
__req-body
__req-hdrs
__do-request