2016-05-09 21 views
0

を設定していない私のget:ローカル私のプロジェクトを実行する場合クッキー有効期限がここ

local

を期待通りに

protected string Identifier 
{ 
    get 
    { 
     HttpCookie cookie = Request.Cookies[IDENTIFIER_COOKIE]; 

     if (cookie != null) 
     { 
      return cookie.Value; 
     } 
     else 
     { 
      cookie = new HttpCookie(IDENTIFIER_COOKIE); 
      cookie.Value = Guid.NewGuid().ToString(); 
      cookie.Expires = DateTime.Now.AddYears(1); 
      Response.Cookies.Add(cookie); 

      return cookie.Value; 
     } 
    } 
} 

、クッキーの有効期限が設定されている。しかし、私は生きてそれを実行すると、クッキーの有効期限はです。閲覧セッションが終了するととなります。

live

私が間違って何をしているのですか?

答えて

0

問題は、私のページがHTTPSで提供されていたことです。私は、有効期限を設定するためにcookie.Secure = trueを指定しなければならなかった。

0

何かをする前に、キャッシュとCookieをクリアすることをお勧めします。

protected string Identifier 
{ 
    get 
    { 
     HttpCookie cookie = Request.Cookies[IDENTIFIER_COOKIE]; 

     if (!cookie) 
     { 
      cookie = new HttpCookie(IDENTIFIER_COOKIE); 
      cookie.Value = Guid.NewGuid().ToString(); 
     }Cookie.Expires = DateTime.Now.AddYears(1); 
     Response.Cookies.Set(cookie); 

     return cookie.Value 
    } 
} 
+0

プライベートブラウジングモードになっていないことを確認してください。 – MiSAKACHi

+0

私のコードとの違いはわかりません。あなたは何もクリアしていないのですか? –

+0

Cookies.Addを使用して、重複したCookieを設定できる場合は、Cookies.Setを使用する必要があります。追加情報:https://stackoverflow.com/questions/5517273/httpcookiecollection-add-vs-httpcookiecollection-set-does-the-request-cookies – MiSAKACHi