1

ログインしているユーザーの情報を表示する単純な MVC プロジェクトがあります。コントローラーとアクションには [Authorize] 属性があり、コントローラーには次のように NoCacheAttribute もあります。

public class NoCacheAttribute : ActionFilterAttribute
{  
    public override void OnResultExecuting(ResultExecutingContext filterContext)
    {
        filterContext.HttpContext.Response.Cache.SetExpires(DateTime.UtcNow.AddDays(-1));
        filterContext.HttpContext.Response.Cache.SetValidUntilExpires(false);
        filterContext.HttpContext.Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
        filterContext.HttpContext.Response.Cache.SetCacheability(HttpCacheability.NoCache);
        filterContext.HttpContext.Response.Cache.SetNoStore();

        base.OnResultExecuting(filterContext);
    }
}

アプリからログアウトして戻る画面を押すと、すべてのデスクトップ ブラウザーでログイン ページにリダイレクトされますが、iPad2 の Safari ではまだキャッシュされた情報ページがあり、情報ページの上にログイン ページが奇妙な方法でレンダリングされます。 (どういうわけか画面の中央にあります)。

認証されていないユーザーが情報ページを表示できないようにするため、これは iPad のキャッシュの問題であると推測しています。

誰かがこの問題に遭遇しましたか?

ありがとう、タマシュ

4

0 に答える 0