0
UserAwareAction과 Cache를 결합하려고합니다. CacheBeforeSilhouette을 얻을 수 있지만 다른 방법은 사용할 수 없습니까? 아무도 나에게이 작업을 수행하는 방법에 대한 힌트를 줄 수 있습니까?Silhouette-4.0.X UserAwareAction과 캐시 동작을 결합하는 방법은 무엇입니까?
문제는 play.api.cache.Cached.applyfunction가 CachedBuilderwhich가 매개 변수로 EssentialAction을 필요로 반환 처음이다 :
@Singleton
class MessageController @Inject() (
implicit val env: Environment[DefaultEnv],
silhouette: Silhouette[DefaultEnv],
cache: CacheApi,
cached: play.api.cache.Cached)
extends Controller with I18nSupport {
...
def testOnlySilhouette = silhouette.UserAwareAction { request =>
Ok("hi")
}
def testOnlyCache = cached("homePage") {
Action {
Ok("Hello world")
}
}
def testCacheOfSilhouette = cached("homePage") {
silhouette.UserAwareAction { request =>
Ok("hi")
}
}
def testSilhouetteOfCache =
silhouette.UserAwareAction { request =>
cached("homePage") {
val res:Result = Ok("hi")
res //type mismatch; found : play.api.mvc.Result required: play.api.mvc.EssentialAction
}
}