1

リクエスト Cookie - 値がレスポンス Cookie - 値と異なるかどうかを検出する必要があります。

次のように簡単ではありません。

if(cookiesArePresent)
{
    bool isDifferent = HttpContext.Current.Response.Cookies[".ASPXANONYMOUS"].value == HttpContext.Current.Response.Cookies[".ASPXANONYMOUS"].value;
}

しかし、Response.Cookies を変更すると Request.Cookies が変更されることを読みました。つまり、HttpContext.Current.Response.Cookies[".ASPXANONYMOUS"] が変更された場合、それらは常に同じであることを意味します。これを回避する簡単な方法はありますか?

http://chance.lindseydev.com/2009/04/aspnet-httprequestcookies-and.html

4

1 に答える 1

1

Reflectorを使用してSystem.Web.Security.AnonymousIdentificationModuleを調べる場合、匿名CookieはPostAuthenticateRequestでのみ読み取り/書き込みが行われることがわかります。

したがって、何かがおかしいと思われる場合は、AuthenticateRequest中にCookieを読み取り、AuthorizeRequestで取得した値と比較する単純なHttpModuleを記述します。

リクエストのライフサイクルの詳細については、「Web.configの探索-system.web/httpModules 」を参照してください。

于 2010-03-20T00:07:01.690 に答える