ホームページ  >  記事  >  ウェブフロントエンド  >  Cookie の隠された秘密を明らかにする: この一般的だがあまり知られていないデータの保存方法を明らかにする

Cookie の隠された秘密を明らかにする: この一般的だがあまり知られていないデータの保存方法を明らかにする

WBOY
WBOYオリジナル
2024-01-06 09:17:18764ブラウズ

Cookie の隠された秘密を明らかにする: この一般的だがあまり知られていないデータの保存方法を明らかにする

Cookie が隠される場所: この一般的だがあまり知られていないデータの保存方法を理解するには、具体的なコード例が必要です

毎日の Web ブラウジングで、次のようなことをよく耳にします。 Cookie の概念は理解されていますが、ほとんどの人の Cookie に対する理解は、Cookie がユーザーのアクティビティを追跡するために使用されるテクノロジーであるという点に限られています。ただし、Cookie が実際には、ブラウザだけでなくコンピュータ上のさまざまな場所に保存できるデータ ストレージの一種であることはあまり知られていません。この記事では、Cookie がどこに隠されているかを調査し、Cookie がどのように保存されるかをより深く理解するために具体的なコード例を示します。

1. ブラウザ側の Cookie ストレージ

最も一般的な Cookie の保存場所はブラウザです。私たちが Web サイトにアクセスすると、次回 Web サイトにアクセスしたときに Web サイトが私たちを認識できるように、コンピューターにいくつかの情報が保存されます。この情報は通常、ログイン ステータス、ショッピング カートのステータスなどの基本的なユーザー識別データです。ブラウザは、この情報を特定のファイル (Cookie ファイルと呼ばれることが多い) に保存します。

JavaScript では、document.cookie を通じて Cookie 値を読み書きできます。以下は簡単なサンプル コードです:

// 设置cookie
document.cookie = "username=John Doe; expires=Thu, 18 Dec 2023 12:00:00 UTC; path=/";

// 读取cookie
console.log(document.cookie);

上記のコードでは、cookie 値として「username=John Doe」を document.cookie に割り当てることで、「username」という名前の cookie を設定します。この Cookie は 2023 年 12 月 18 日に期限切れになり、Web サイトのパス全体で利用可能になります。 document.cookie を直接印刷すると、現在のページのすべての Cookie 値を確認できます。

2. サーバー側の Cookie ストレージ

ブラウザに Cookie を保存するだけでなく、サーバー側にも Cookie を保存できます。これは通常、Cookie のセキュリティと制御を強化するために行われます。 Cookie をサーバー側に保存する最も一般的な方法は、セッションを使用することです。セッションは、ユーザー情報をサーバーに保存することによってユーザー ID 認証と状態維持を実装する、サーバー側の状態管理メカニズムです。

以下は、Node.js と Express フレームワークを使用した簡単なサンプル コードです。

// 通过设置session
app.get('/setSession', function (req, res) {
  if (!req.session.views) {
    req.session.views = 1;
  } else {
    req.session.views++;
  }
  res.send('Session value: ' + req.session.views);
});

// 通过获取session
app.get('/getSession', function (req, res) {
  res.send('Session value: ' + req.session.views);
});

上記のコードでは、Express-Session ミドルウェアを使用して Session 関数を実装します。 「/setSession」インターフェースにアクセスすると、「views」という名前のセッション値を追加し、現在のセッション値を返すことができます。 「/getSession」インターフェースにアクセスすると、現在のセッション値を取得できます。

3. 他の隠れた場所での Cookie の保存

ブラウザやサーバーに Cookie を保存するだけでなく、データベース、ファイル システム、メモリなどの他の場所に Cookie を保存することもできます。これを実現するには通常、特定のテクノロジーとコードを使用する必要があります。

データベースに Cookie を保存することを例として、PHP と MySQL を使用した簡単なサンプル コードを以下に示します。

// 连接数据库
$conn = new mysqli('localhost', 'username', 'password', 'database');

// 设置cookie
$cookie_value = time();
$sql = "INSERT INTO cookies (cookie_value) VALUES ('$cookie_value')";
$conn->query($sql);

// 读取cookie
$sql = "SELECT cookie_value FROM cookies";
$result = $conn->query($sql);
$row = $result->fetch_assoc();
echo "Cookie value: " . $row['cookie_value'];

上記のコードでは、Cookie の値をデータベースのクッキー。そして、データベースから Cookie の値をクエリすることで、それを読み取ってページに表示できます。

概要:

上記のコード例を通じて、Cookie が隠されている場所について詳しく理解しました。一般的なブラウザ側およびサーバー側の保存方法に加えて、さまざまなニーズを満たすためにデータベース、ファイル システム、メモリなどに Cookie を保存することもできます。どの保存方法を選択する場合でも、機密情報の漏洩を避けるために、Cookie のセキュリティに特別な注意を払う必要があります。同時に、Cookie の保存方法とコード例を読んで理解することは、Cookie テクノロジーをより深く理解し、適用するのに役立ちます。

以上がCookie の隠された秘密を明らかにする: この一般的だがあまり知られていないデータの保存方法を明らかにするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。