scamper.http.client
Type members
Classlikes
Adds client extensions to HttpMessage
.
Adds client extensions to HttpMessage
.
Adds client extensions to HttpRequest
.
Adds client extensions to HttpRequest
.
Adds client extensions to HttpResponse
.
Adds client extensions to HttpResponse
.
Defines HTTP client settings.
Defines HTTP client settings.
ClientSettings
is a mutable structure. With each applied change, the
settings are modified and returned. After applying the desired settings, a
client is created using a factory method.
Default Settings
Key | Value |
---|---|
accept | * /* |
acceptEncodings | Nil |
bufferSize | 8192 |
readTimeout | 30000 |
continueTimeout | 1000 |
keepAlive | false |
coookies | CookieStore.Null |
trust | (Not set) |
incoming | (Not set) |
outgoing | (Not set) |
- Constructor:
Creates client settings.
Defines HTTP client.
Defines HTTP client.
A client can be created using the HttpClient companion object.
import scala.language.implicitConversions
import scamper.http.{ BodyParser, stringToUri }
import scamper.http.client.HttpClient
given BodyParser[String] = BodyParser.string()
// Create HttpClient instance
val client = HttpClient()
def getMessageOfTheDay(): Either[Int, String] =
// Use client instance
client.get("http://localhost:8080/motd") { res =>
res.isSuccessful match
case true => Right(res.as[String])
case false => Left(res.statusCode)
}
And, if a given client is in scope, you can make use of send()
on the
request itself.
import scala.language.implicitConversions
import scamper.http.{ BodyParser, stringToUri }
import scamper.http.RequestMethod.Registry.Get
import scamper.http.client.{ ClientHttpRequest, HttpClient }
import scamper.http.headers.{ Accept, AcceptLanguage }
import scamper.http.types.{ stringToMediaRange, stringToLanguageRange }
given HttpClient = HttpClient()
given BodyParser[String] = BodyParser.string(4096)
Get("http://localhost:8080/motd")
.setAccept("text/plain")
.setAcceptLanguage("en-US; q=0.6", "fr-CA; q=0.4")
.send(res => println(res.as[String])) // Send request using client
See also ClientSettings for information about configuring the HTTP client before it is created.
- Companion:
- object
Indicates request is aborted.
Indicates request is aborted.
Defines filter for outgoing request.
Defines filter for outgoing request.
Defines filter for incoming response.
Defines filter for incoming response.
Defines handler for incoming response.
Defines handler for incoming response.