2013-10-16 19 views
9

私は、応答からサーバーからクッキーを作成しています。それは、angularJsを使って同じクッキーを読み込もうとすると問題ないと思います。$ cookieStore.get()未定義」、$は、cookiestoreは、[OK]を注入し、実行しているようだangularJsがクッキーを読み取ることができない理由を、私は思ったんだけど、私はクロムを使用して開発ツールを使用してデバッグしているとクッキーがあり、

console.log($cookieStore.get("r")); 

r: undefined

enter image description here

編集:

私は$クッキーのサービスを試してみましたし、私も未定義得ます。

私は私がサービススタックを使用していますし、コードは以下の通りですChromeデベロッパーツールで

をクッキーを取得しています、何の問題もなく、サーバー側のクッキーを送信します。

public override object Logout(IServiceBase service, ServiceStack.ServiceInterface.Auth.Auth request) 
     { 
      var resp = service.RequestContext.Get<IHttpResponse>(); 
      resp.Cookies.AddCookie(new Cookie { Name = "r", Path = "/", Value = "from server", HttpOnly = false, Discard = false, Expires = DateTime.Now.AddHours(12) }); 
      return base.Logout(service, request); 
     } 

答えて

6

私は$cookieStoreが単独で使用されることを意図していると思っていました、 'r'は別の場所に設定されていましたか? Docsは、クッキーに直接アクセスするのではなく、クッキーに裏打ちされたキー/バリューストアを提供していると言います。 「myValue」を「jason」に設定すると、%22jason%22(fiddle)が格納されます。これは、必要に応じてjavascriptオブジェクトに値を設定できることを意味し、cookieStoreはそれらをシリアル化してデシリアライズします。

enter image description here

あなただけのプロパティを設定することができますし、値が(fiddle)をエンコードされていない代わりに$cookiesを使用してみてください:

enter image description here

$scope.setValue = function() { 
     $cookieStore.put("myValue", $scope.value); 
    }; 

    $scope.getValue = function() { 
     $scope.value = $cookieStore.get('myValue'); 
    }; 

    $scope.setCookieValue = function() { 
     $cookies.otherValue = $scope.value; 
    }; 

    $scope.getCookieValue = function() { 
     $scope.value = $cookies.otherValue; 
    }; 
+0

**他の場所に設定されていましたか?**はい、サーバー側に設定されていました。ただ、値に直接アクセスしたいのですが、代わりに$ cookiesを使用しようとします –

+0

両方のケースで$ cookies ['r']と$ cookies.rが未定義 –

+0

'document.cookie'はコンソールに表示されますか? –

6

はい@Pedroがために、.NETでの権利でありますたとえば、デフォルトでHttpCookieで認証を行う場合、HttpOnly属性はtrueで、javscript - > document.cookieではブラウザに保存したばかりのCookieを見つけることができません。

クッキーを保存するときに、HttpOnlyをfalseに設定することで、私にとってうまくいっています。

+0

お役立ち情報経験を共有してくれてありがとう –

+0

これはコメントでなければなりません。 51の評判で、あなたはコメントできるはずです。 –

関連する問題