dave
09/14/2020, 12:36 PMMehdi
09/14/2020, 12:37 PMMehdi
09/14/2020, 12:40 PMdave
09/14/2020, 12:41 PMMehdi
09/14/2020, 12:42 PMroutes += "/foo" meta {
summary = "my summary"
description = "my desc"
headers += Header.string().required("auth_token")
receiving(myLens to MyDTO())
}
dave
09/14/2020, 12:46 PMMehdi
09/14/2020, 12:47 PMdave
09/14/2020, 12:49 PMMehdi
09/14/2020, 12:57 PMdave
09/14/2020, 1:01 PMMehdi
09/14/2020, 1:04 PMdave
09/14/2020, 1:47 PMMehdi
09/14/2020, 1:50 PMdave
09/14/2020, 1:50 PMMehdi
09/14/2020, 1:52 PMdave
09/14/2020, 1:52 PMclass ApiKeySecurity<out T>(val param: Lens<Request, T>,
validateKey: (T) -> Boolean,
authorizeOptionsRequests: Boolean = true,
val name: String = "api_key") : Security {
Mehdi
09/14/2020, 2:37 PMorigin
dave
09/14/2020, 2:43 PMsecurity = ApiKeySecurity(Header.required("foobar2"), { true}, true, name="bob2").and(ApiKeySecurity(Header.required("foobar"), { true}, true, name="bob"))
curl -X GET "<http://localhost:9000/api/whoIsThere>" -H "accept: application/json" -H "foobar2: asd" -H "foobar: dsa"
Mehdi
09/14/2020, 2:59 PMdave
09/14/2020, 3:05 PMMehdi
09/14/2020, 5:19 PMdave
09/14/2020, 5:25 PMMehdi
09/15/2020, 11:13 AMfun getMyRoute(): ContractRoute {
val spec = "foo" / Path.of("name1") / Path.of(name2) /"bar1" / "bar2" meta {
summary = "summary"
description = "description"
} bindContract Method.PUT
return spec to { s: String, s1: String, s2: String, s3: String -> ::myhandler() }
}
dave
09/15/2020, 11:15 AMMehdi
09/15/2020, 12:13 PMdave
09/15/2020, 12:34 PMMehdi
09/15/2020, 1:15 PMdave
09/15/2020, 1:16 PMMehdi
09/15/2020, 2:42 PMdave
09/15/2020, 2:43 PM