I have a HTTP
response. I am trying to get the value for one of the header from it using scala
.
My code looks similar to below:
import scalaj.http.Http
val result = Http("http:///sample.com")
.postData("""{"Username":"user1","password":"pass"""")
.header("Content-Type", "application")
.header("Accept", "text/plain")
val headers = result.headers.mkString
println("Headers: " + headers)
The headers look similar to below:
Cache-Control -> Vector(no-Store)
Content-Type -> Vector(text/html;charset=ISO-8859-l)
Set-Cookie -> Vector(SESSIONID=D122334;path=/a/b/c;SSO=000112233445)
Out of this header, I want to extract SSO value alone. Using below code, I am able to print them properly.
for((k,v) <- result.headers) println(s"key: $k\nvalue: $v\n")
Getting following result:
key: Cache-Control
value: Vector(no-Store)
key: Content-Type
value: Vector(text/html;charset=ISO-8859-l)
key: Set-Cookie
value: Vector(SESSIONID=D122334;path=/a/b/c;SSO=000112233445)
I want to extract the data for SSO
under key Set-Cookie
alone.
I am aware of how to achieve this using python
I am pretty new to Scala. Can some one please help me out here?
Use
cookies
methods and filter cookie by nameYou will get
Some("tokenValue")
when token is found, if you want to get it asString
, you can do the followingIt will throw an exception if token is not found