升级到Play Framework 2.5.4,Scala后,Session无法运行

时间:2016-08-03 15:44:02

标签: scala session playframework playframework-2.0

将我的项目从2.4.8升级到Play Framework 2.5.4后,我在使用会话时遇到了问题。我的控制器中有方法来测试问题:

def test = Action { implicit request =>
  Redirect(controllers.routes.Carts.test2()).withSession(new Session(Map("user" -> "customer")))
}

def test2 = Action { implicit request =>
  Ok(request.session.data.toString())
}

基本上test方法会添加会话并重定向到test2方法。当我在重定向后用测试方法url打开页面时,我在浏览器中得到了我需要的东西:

  

地图(用户 - >客户)

但是如果我在那之后刷新页面,那我就得到了:

  

地图(csrfToken - >     ce1a6222484f378d38ab3534c2b400191270395d-1470238791014-c988ce3fe47259173166949a)

所以,看起来session只适用于一个请求,然后用csrfToken覆盖。我已禁用所有过滤器。我的过滤器类看起来像这样:

class Filters @Inject() () extends HttpFilters {
  val filters = Seq.empty
}

无法理解我的代码有什么问题。在升级之前,相同的代码工作正常。

1 个答案:

答案 0 :(得分:1)

如果session.secure为true,请检入你的application.conf,将其带到

play.http.session.secure=false