@int128

int128.hatenablog.com

JavaScriptにおけるURLエンコードされたCookieの取得

JavaScriptでURLエンコードされた文字列を変換するには decodeURIComponent を使用しますが、UTF-8以外の場合(Shift-JIS等)は文字コード変換が必要です。encoding.jsを使うと下記のように書けます。

github.com

Encoding.codeToString(Encoding.convert(Encoding.urlDecode(value), 'UNICODE', 'AUTO'));

Cookieを取得するにはjs-cookieが便利です。

github.com

Converterを使うと前処理で文字コードを変換しておくことが可能です。

Cookies.withConverter({
  read: value => Encoding.codeToString(Encoding.convert(Encoding.urlDecode(value), 'UNICODE', 'AUTO'));
}).get();

ご参考まで。