ホームページ >ウェブフロントエンド >jsチュートリアル >AngularJs 操作 Cookie の例の共有
Cookie は、クライアント側のテクノロジーであると言えます。プログラムは、ユーザーの情報の一部を Cookie の形式でユーザーのそれぞれのブラウザに書き込みます。端的に言えば、ユーザーの身元を特定するために Web サイトによってユーザーのコンピューターに保存されるデータです。 多くのショッピングサイトのショッピングカート機能やフォーラム自動ログイン機能はCookieにより実現されています。
Cookie に対する操作には、保存、取得、削除が含まれます。
Angular は、ユーザーの利便性と Cookie の操作の簡素化のために ngCookies モジュールを提供します。このモジュールでは、次の 2 つのサービスが提供されます。
$cookieStore サービス
$cookies サービス
まず $cookies について話しましょう。
$cookies は jQuery.cookie.js に似ており、次のサービスを提供します。 Angular の操作 Cookie メソッド。通常の状況では、JavaScript は Cookie にオブジェクトを書き込むことができませんが、Angular は Cookie にオブジェクトを書き込むメソッドを提供します。 $cookies は次のメソッドを提供します:
get(key) 返回一个指定key的cookie值 getObject(key) 返回一个指定key的反序列化cookie值 getAll() 以key-value对象形式返回所有的cookie put(key,value,[options]) 写入一个key-value的cookie putObject(key,value,[options])序列化设置一个key-value的Cookie remove(key,[options]) 移除对应key的cookie demo:比如用户登录,记住密码的cookie有效期是7天。 var cookieInfo= {}; cookieInfo.username = $scope.username; cookieInfo.password = $scope.password; var expireDate = new Date(); expireDate.setDate(expireDate.getDate() + 7);//设置cookie保存7天 $cookies.putObject("user", cookieDate, {'expires': expireDate}); 获取也很方便: $scope.ID = $cookies.getObject("user").username; $scope.sid = $cookies.getObject("user").password; 简单的只有一个key-value的话用put()比较简单,但是是过期时间是session,关闭浏览器就没有了。 $cookies.put('myFavorite', 'oatmeal'); 再说说$cookieStore ,$cookieStore服务是基于后端的Session Cookies,所以写入的时候不能使用options属性, 而且它的过期时间就是session。关闭浏览器了,cookie就失效了。 $cookieStore不可以通过设置default里面的expires来设置过期时间,$cookieStore操作Cookie都是基于Session过期的。 所以上面的例子你如果使用$cookieStore来实现记住用户名和密码的话,关闭浏览器cookies就失效了,无法达到记住n天的这个功能。 $cookieStore.put("user", { username:aaa, password:123 expires: new Date(new Date().getDate() + 5000) });
これにより、有効期限は無効になります。 ! ! !
概要:
ngCookies モジュールによって提供される $cookies サービスは、開発者が Cookie を読み書きするのに非常に便利です。オブジェクトの書き込みと読み取りもサポートされており、より便利で使いやすくなっています。当時の開発プロセスでは、まだ Cookie にあまり多くのデータを書き込むことができませんでした。一方、Cookie に機密データを書き込むことはセキュリティの観点から危険でした。パスワードは暗号化方式でバックエンドと合意する必要があり、クリア テキストで直接保存することはできないため、非常に安全ではありません。 Cookie を使用する場合は、パスとドメインの落とし穴に注意する必要があります。問題はありません。
最後に: Angular 公式 Web サイトは、$cookieStore は廃止され、$cookies サービスの使用が推奨されることを思い出させました。
関連する推奨事項:
JavaScript操作CookieとCookie属性の正しい使用_JavaScriptスキル
jQueryを使用してCookieを操作するための実装コード_jquery
JS操作Cookieには(読み取り、追加、削除)_JavaScriptスキル
以上がAngularJs 操作 Cookie の例の共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。