私は scala play フレームワークが初めてです。セッション値が見つからず、ユーザーがホームまたは他のページの URL を試行した場合、ログイン ページにリダイレクトしたいと考えています。私が何を望んでいるのか理解していただければ幸いです。scala play フレームワークで、ユーザーがアクセスしようとするとログインせずにホームページにエラーが表示される
user2822316
質問する
2263 次
4 に答える
0
play docs www.playframework.com/documentation/2.0.x/ScalaSecurityをご覧ください。Secured trait を使用して認可を実行する方法の例があります。
于 2013-10-08T13:38:31.637 に答える
0
私は解決策を得ましたが、それが正しいアプローチであるかどうかはわかりません。
def generalAccountSetting()=Action{
implicit request=>
try{
val result=User.getResult(session.get("userId").get)// this makes exception, if user not logged in.
if(!result.isEmpty){
Ok(html.general(result(0)))
}
else
Ok(html.onError())
}catch{
case e:Exception=>
println(e.toString)
Redirect("/").withNewSession
}
}//end generalAccountSetting
編集:5日後
より良い方法を得た
def generalAccountSetting() = Action { implicit request =>
try{
session.get("userId").map{user=>
val result=User.getResult(session.get("userId").get)// this makes exception, if user not logged in.
if(!result.isEmpty){
Ok(html.general(result(0)))
}
else
Ok(html.onError())
}.getOrElse{
Redirect("/")
}
}catch{
case e=>
Ok(html.onError())
}
}//end generalAccountSetting
于 2013-10-15T04:31:53.013 に答える