HttpClient

trait HttpClient[F[_]] extends Closeable
Companion
object
trait Closeable
trait AutoCloseable
class Object
trait Matchable
class Any
class OkClient

Type members

Classlikes

class FOps[T](f: F[T])

Value members

Abstract methods

def close(): Unit
def execute(request: Request): F[OkHttpResponse]
def fail[T](e: Exception): F[T]
def flatMap[T, U](t: F[T])(f: T => F[U]): F[U]
def raw(request: Request): F[Response]
def streamed[T](request: Request)(consume: Response => F[T]): F[T]
def success[T](t: T): F[T]

Concrete methods

def download(url: FullUrl, to: Path, headers: Map[String, String]): F[Either[StatusError, StorageSize]]

Downloads url to to, returning the number of bytes written to to.

Downloads url to to, returning the number of bytes written to to.

Value Params
headers

http headers

to

destination, a file

url

url to download

Returns

bytes written

def get(url: FullUrl, headers: Map[String, String]): F[OkHttpResponse]
def getAs[T](url: FullUrl, headers: Map[String, String])(implicit evidence$1: Decoder[T]): F[T]
def multiPart(url: FullUrl, headers: Map[String, String], parts: Map[String, String], files: Seq[MultiPartFile]): F[OkHttpResponse]
def parse[T](response: OkHttpResponse, url: FullUrl)(implicit evidence$6: Decoder[T]): F[T]

Parses the response as a T.

Parses the response as a T.

The returned Future fails with a ResponseError if parsing fails.

Type Params
T

type to parse

Value Params
response

HTTP response

url

the request URL

Returns

a parsed response

def post(url: FullUrl, body: RequestBody, headers: Map[String, String]): F[OkHttpResponse]
def postAs[W, T](url: FullUrl, json: W, headers: Map[String, String])(implicit evidence$2: Encoder[W], evidence$3: Decoder[T]): F[T]
def postFile(url: FullUrl, mediaType: MediaType, file: Path, headers: Map[String, String]): F[OkHttpResponse]
def postForm(url: FullUrl, form: Map[String, String], headers: Map[String, String]): F[OkHttpResponse]
def postFormAs[T](url: FullUrl, form: Map[String, String], headers: Map[String, String])(implicit evidence$5: Decoder[T]): F[T]
def postJson(url: FullUrl, json: Json, headers: Map[String, String]): F[OkHttpResponse]
def postJsonAs[T](url: FullUrl, json: Json, headers: Map[String, String])(implicit evidence$4: Decoder[T]): F[T]