JavaScriptでオブジェクトをzlib圧縮してCookieに保存できる「zcookies」ライブラリの利用方法
あるシステムでCookieを保存している部分があった。ただ、日本語を保存している筈なのにブラウザの開発者ツールで確認するとランダム英数字で保存されていた。どうも「zcookies」というライブラリを使用しているようで、こちらはzlib圧縮してCookie保存⇔展開できるというライブラリみたい。以下に利用方法のメモ。
GitHub
https://github.com/ukyo/zcookies
読み込み方法
CDNは無いっぽいのでこちらのページからzcookies.min.jsをダウンロードし、適当なディレクトリにアップロードすること。
特長・メリット
- zlib圧縮されるためより多くのデータが保存できる。
- オブジェクトをそのまま保存できる(js-cookieだとjson等に変換してから保存する必要あり)。
- 保存されるデータの見た目がランダム英数字なので多少はセキュリティ対策になるかも?
利用方法
ソースコード
<script>
const data = {
name: '田中',
age: 20,
};
zcookies.set('data', data); //data:"a1qSl5ibuuz5lA1PdqxdnJieKgIA"
const cookie = zcookies.get('data');
console.log(cookie); //Object { name: "田中", age: 20 }
</script>
解説等
コメントにも書いているがCookieを保存すると「a1qSl5ibuuz5lA1PdqxdnJieKgIA」というデータが保存される。展開すると元のオブジェクトして利用できる。
オプション項目
Cookie保存時のオプション項目はこちらのページを参照すること。
関連記事
-
-
バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法
あるサイトのコーディングデータを貰った際に「lazysizes」というJavaS ...
-
-
JavaScriptにて「QRCode.js」ライブラリを利用してQRコードを生成する方法
PHPが使えない環境で動的にQRコードを生成したかった。以前にメモしたAPI等の ...
-
-
jQueryプラグインでクリップボードにコピーする方法(clipboard.js)
ページ上のボタンをクリックすることで特定の文章をクリップボードにコピーしたかった ...
-
-
JavaScriptでWebカメラやスマホカメラを利用してQRコードを読み取りURLを返す方法
JavaScriptのjsQRというライブラリで簡単にWebページ版QRコードリ ...
-
-
JavaScriptの「Day.js」ライブラリで日付の比較を行う方法
JavaScriptの日時・時刻用ライブラリ「Day.js」を用いて日付の比較を ...