9

クロームの場合、C#でのCookieの有効期限に問題があります。

これが私が使用しているコードです:

public static void createCookie(Users u, DateTime expirationDate)
{
    HttpCookie loginCookie = new HttpCookie("cookie");
    loginCookie.Value = "somevalue";
    loginCookie.Expires = DateTime.UtcNow.AddDays(1d);
    HttpContext.Current.Response.Cookies.Add(loginCookie);
}

このコードをFiddlerで実行しましたが、正しい有効期限が返されます。Cookieの有効期限はFirefoxとIE9でも正しいですが、これをChromeで実行すると、有効期限は常に次のように設定されます:Sun、07 Dec 1969 03:28:36 GMT

常に3:28:36GMTに変更されることはありません。なぜこれが起こっているのかについてのアイデアは大歓迎です。ありがとう!

また、DateTime.Now.AddDays(1d)を使用して有効期限を設定しようとしましたが、同じ結果になりました。

4

1 に答える 1

13

これは、Chrome の現在のバージョンのバグです。実際の有効期限ではなく、間違った有効期限の表示です。設定した値は Chrome によって尊重されます!

ナイトリー ビルドで修正されたバグへのリンクは次のとおりです (20.0.1132.7 (公式ビルド 136817) で修正済みとして確認済み): http://code.google.com/p/chromium/issues/detail?id=125546

于 2012-06-05T00:33:28.777 に答える