0
Play 2.6.xの静的コンテンツ(つまりアセット)の上に認証/承認レイヤーを追加する最も簡単な方法は何ですか?Playの静的コンテンツの認証(2)
## auth login page
GET /index
## static (single-path shell) served (assuming login attempt was authenticated)
GET /console controllers.Foo.secureHTML(path="/public/html", file="console.html")
アンルーティングコントローラメソッドは次のようになります:
は、私たちのようなルーティングされる静的なコンテンツがあるとし
@Inject
民間資産の資産を、
public Result secureHTML(String path, String file) {
if(auth()) {
return assets.at(path + "/" + file); <--- return This asset (when authenticated)
} else {
// redirect to Login page...
return unauthorized();
}
}
注:
1)私たちが提供している資産は
2の.jar展開へ内部だろう)私たちは、Javaを使用しているが、Scalaでは提案された解決策は次のようになります細かすぎる
ありがとうございます。
public class AuthLayer extends Controller {
@Inject
private Environment environment;
private boolean auth() {
// do something smart
// for now....
return true;
}
public Result html(String path, String file) {
if(auth()) {
return ok(environment.getFile(path + "/" + file));
} else {
// redirect to Login page...
return redirect("/path/to/loginForm");
}
}
}
:答え探しの方のために