【问题标题】:Getting the cookie string key in Play for Scala在 Play for Scala 中获取 cookie 字符串键
【发布时间】:2016-07-08 20:44:39
【问题描述】:

当在 Play 应用程序中接收请求时,我可以像这样打印 cookie:

println(request.cookies)

结果是这样的:

Map(PLAY_SESSION -> Cookie(PLAY_SESSION,bd5712f8fb6a7a43935e20f98d6b147181dda9d5-inr=val1&uid=val2,None,/,None,false,true))

我只需要密钥bd5712f8fb6a7a43935e20f98d6b147181dda9d5,有没有办法在 Play 中获取它或者我必须解析字符串?

【问题讨论】:

  • 也许你可以看看documentation
  • 没说怎么拿到钥匙,是不是漏掉了?

标签: scala playframework playframework-2.0


【解决方案1】:

你可以像这样获取 cookie 值:

val cookieValue = request.cookies.get(KEY) match {
        case Some(cookie) => cookie.value
        case None => ""
}

如果你只想得到钥匙

val cookieNames = request.cookies.map{cookie =>
cookie.name
}

【讨论】:

  • 我需要密钥(例如 bd5712f8fb6a7a43935e20f98d6b147181dda9d5)而不是 cookie 值
  • 试试这个:request.cookies.foreach{cookie => cookie.name},你也可以用map代替foreach。我也更新了我的答案。
  • 当我说密钥时,我指的不是 cookie 密钥,而是 Play 用来确保 cookie 不被黑客入侵的字符串,例如 bd5712f8fb6a7a43935e20f98d6b147181dda9d5,这就是我需要的。我知道如何获取 cookie。
猜你喜欢
  • 2020-03-19
  • 1970-01-01
  • 1970-01-01
  • 2016-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-21
  • 2020-06-01
相关资源
最近更新 更多