$cookies
はangularjsで正しく動作しません。 true/false(文字列として格納)を格納するためにをに登録して、$cookies
をシングルページアプリケーションで使用します。
前のバージョン:
私は
$cookies.put('displayUsers', $scope.somevalue, {expires:somedatetimevalue});
これがうまく働いたが、数ヶ月後に、正常に動作していないクッキーを書いたコード。 調査中(クロム)同じドメインの同じ名前の同じ名前の2つのクッキーが見つかりましたが、パスは異なっていました。最初のパスは/demo/project1
で、もう1つは/project1
でした。 URL /demo
はアプリケーションの一部ではなく、そのようなURLはまったく別のアプリケーションにリダイレクトされます。 everyTime上記の$cookies.put()
メソッドは、パス/demo/project1
でクッキーを更新していないと呼ばれました。したがって、その値は常に偽でした。
この問題を解決するために、がChromeで正常に機能したCookieを保存するようにしましたが、IEでは無効です。
新バージョン:
$cookies.put('displayUsers', $scope.somevalue, {expires:somedatetimevalueinyears, path:'/demo/project1'});
私はまた、その後も、それはすなわちで働いていなかった、それを保存する前にクッキーを削除しようとしました。 コンソールでCookieの値を確認しましたが、document.cookie
stmtを使用してdisplayUsers
のCookieの場合は常にfalseでした。 ブラウザのデータをクッキーとともにクリアしてから試してみると、IEではこれまでと同じように動作します(一貫性は分かりません)。
IEで履歴を消去しないと、何が失敗する可能性がありますか?
また、両方の場合(pathが指定されているかどうか)にIEでcookieがどのように動作するかを知りたいと思います。
あなたは依存関係として 'ngCookies'を含めましたか? –
これですべてが含まれています。この問題はほぼ6ヶ月後に発生しました。これを修正するために、私は特定のパスでクッキーを保存し始めました。しかし、今ではそのように働いていない。私はそれが動作するように履歴をクリアする必要があります –
なぜ1.4対1.5を使用していますか?何か特別な理由?あなたはまだそれが動作しないかどうかを見て1.5を試しましたか? – Ohjay44