如何在使用Scala的Play框架中读取cookie的值?
如何在使用Scala的Play框架中读取控制器中cookie的值 在我的控制器中,我有:如何在使用Scala的Play框架中读取cookie的值?,scala,cookies,playframework,Scala,Cookies,Playframework,如何在使用Scala的Play框架中读取控制器中cookie的值 在我的控制器中,我有: println(Http.Request.current().headers.get("cookie")) 输出是这样的: [csrftoken=011d7cfe84915ee9897c8c6079d49d5a; test=value] 我希望有一种更好的方法来访问“test”的值,而不是解析字符串……) 您可以使用HTTP请求上的cookie对象访问cookie,而不是从标头获取原始格式的cookie
println(Http.Request.current().headers.get("cookie"))
输出是这样的:
[csrftoken=011d7cfe84915ee9897c8c6079d49d5a; test=value]
我希望有一种更好的方法来访问“test”的值,而不是解析字符串……) 您可以使用HTTP请求上的
cookie
对象访问cookie,而不是从标头获取原始格式的cookie。查看API以了解更多信息
你应该能够做到:
Http.Request.current().cookies.get(“test”)
您可以使用
@request.cookies.get(“email”).value
如果要检查其非空,
@如果(request.cookies.get(“email”)!=null){}我将Play2.6.19与Scala一起使用,我获取如下信息
val leadToken = request.cookies.get("lead_token") match {
case Some(cookie) => cookie.value
case None => ""
}
这与
request.cookies.get(“test”)
是不同还是相同?几乎相同。除此之外,如果您没有访问请求对象的权限,则可以使用Http.request.current()
获取它。OP没有指定他有权访问请求对象,因此继续使用他使用的相同语法更安全。在Play+Scala中,默认情况下,我认为我的作用域中没有请求对象@Codemwnci的回答非常有效;谢谢大家!@派罗尼:是的,你有,我在我发表的评论中使用了代码。我使用Scala+Play。