2020年9月12日(土)
[JavaScript] Cookieについて #■パソコン・通信 Cookieとは、Webページにアクセスしたとき、デバイス側(パソコン、タブレット、スマホ)に情報を保存したり読み出したりできる仕組みです。ブラウザごとにCookieファイルを持っています。
Cookieは、JavaScriptやPHPで取り扱うことができます。自分は、簡単なのでPHPをよく使います。JavaScriptは少しややこしいので、ここで整理しておきたいと思います。
【Cookieに保存】
■基本(期限無し)
ブラウザを閉じたら無効になります。valueは、数値でも文字列でも、'value'のように囲みは不要です。
--
document.cookie
=
"key=value;";
--
■期限有り
キー1つ1つに、期限を設定できます。
●expires=日付(協定世界時)
--
$date
=
new
Date();
//
現時刻
$time
=
$date.getTime();
//
ミリ秒
$expires
=
$time+90*24*60*60*1000;
//
90日間
$date
=
new
Date($expires);
document.cookie
=
"key=value;
expires="+$date.toUTCString();
--
●max-age=秒数
--
document.cookie
=
"key=value;
max-age=300";
//
5分間だけ有効
--
■消去
期限を現時刻より前に設定すると、消去することが出来ます。
【Cookieを読み出す】
document.cookieで、Cookieの中身を全部読み出すことが出来ます。
--
alert(document.cookie);
--
document.cookieには、テキストで"key=value;
"の繰り返しで収められています。";
"で切り分けて、”=”で切り分けて、キーの値を取り出します。関数は無く、自作しなければいけません。
--
function
_cookieRead($key){
$target
=
document.cookie
.split(";
")
.find($row
=>
$row.startsWith($key));
if($target
===
undefined){
$cookie
=
"";
//
プログラミングによって変更
}else{
$cookie
=
$target.split("=")[1];
}
return
$cookie;
}
--
【Google
ChromeでCookieを確認、編集】
EditThisCookie拡張機能で、簡単にできます。
https://chrome.google.com/webstore/detail/editthiscookie/fngmhnnpilhplaeedifhccceomclgfbg?hl=ja