勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptでオブジェクトをzlib圧縮してCookieに保存できる「zcookies」ライブラリの利用方法

  JavaScript

あるシステムでCookieを保存している部分があった。ただ、日本語を保存している筈なのにブラウザの開発者ツールで確認するとランダム英数字で保存されていた。どうも「zcookies」というライブラリを使用しているようで、こちらはzlib圧縮してCookie保存⇔展開できるというライブラリみたい。以下に利用方法のメモ。

 

zcookies

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保存時のオプション項目はこちらのページを参照すること。

 - JavaScript

  関連記事

JavaScriptのライブラリ「crypto-js」を使用して暗号化・復号化・ハッシュ化する方法

JavaScriptにてCookie等にデータを保存する際に暗号化したものを保存 ...

JavaScript / PHPにて「lz-string」を用いてデータの圧縮・展開する方法

文字数が多いGETパラメータを送信したいというケースがあった。また、送信側はJa ...

表示範囲を自由に変更可能な折れ線グラフが表示できるJSライブラリ amCharts の使用方法

どこかのサイトを閲覧していた際に、恐らくはJavaScriptのライブラリで描写 ...

JavaScriptの動画プレイヤー用ライブラリ「Plyr」の利用方法

先日JavaScriptの動画プレイヤー用ライブラリ「Video.js」を試した ...

JavaScriptでランダムなカラーコードを生成する「RandomColor」ライブラリの利用方法

先日PHPでランダムなカラーコードを生成する「RandomColor.php」ラ ...