目次
HTTP Cookie の状態管理の仕組み、Cookie の詳細説明
興味があるかもしれない記事:
ホームページ バックエンド開発 PHPチュートリアル HTTP Cookieの状態管理機構の詳細説明、cookie_PHPチュートリアルの詳細説明

HTTP Cookieの状態管理機構の詳細説明、cookie_PHPチュートリアルの詳細説明

Jul 12, 2016 am 09:00 AM
cookie http 機構

「Cookie」とも呼ばれる HTTP Cookie は古くから存在していますが、まだ完全には理解されていません。主な問題は、Cookie がバックドアやウイルスであると考えられたり、Cookie がどのように機能するかを単に理解していないなど、多くの誤解があることです。 2 番目の問題は、Cookie の一貫したインターフェイスが欠如していることです。これらの問題にもかかわらず、Cookie は依然として Web 開発において非常に重要な役割を果たしているため、もし Cookie が代わりに使用されずに消滅すると、私たちのお気に入りの Web アプリケーションの多くが役に立たなくなるでしょう。

1. クッキーの由来

Cookie は 1993 年 3 月に Netscape の従業員 Lou Montulli によって初めて発明され、その後 W3C によって採用されました。現在、Cookie は標準となり、IE、Chrome、Firefox、Opera などのすべての主流ブラウザーでサポートされています。

Cookie の誕生は、HTTP プロトコルの固有の欠陥によるものです。HTTP は、リクエスト/レスポンスが完了すると、クライアントとサーバー間の接続が閉じられ、新しい接続を確立する必要があります。再度データを交換します。これは、サーバーが接続からセッションを追跡できない、つまり、サーバーがどのクライアントであるかを認識できないことを意味します。

ログイン/ショッピングカートなどの一部の一般的なアプリケーションは実装できません。たとえば、ユーザー A がショッピング モールで購入した商品は、ユーザー A がいつ購入しても同じセッションに属しており、ユーザー B またはユーザー C のショッピング カートに入れることはできません。同じセッションに属していません。

基本原理は図の通りです


2. クッキーの操作

Cookieに対する操作には以下が含まれます

1.名前
2.価値
3.ドメイン
4.パス
5.有効期限切れ
6.セキュリティ
7.HttpOnly (サーバー側のみ)

Cookie は主にサーバー側で作成されますが、JS も Cookie を作成できますが、HttpOnly タイプの JS は作成できないことに注意してください。

ブラウザが提供するCookie API(document.cookie)は単純すぎるため、次のようにsetter/getter cookie関数を使用するとより便利です

リーリー

もちろん、より便利な機能を提供する https://github.com/florian/cookie.js もあります。

3. クッキーの種類

1. 通常のCookieはサーバーサイドとJSの両方で作成でき、JSからアクセスできます
2.HttpOnly Cookie はサーバーによってのみ作成でき、主にセキュリティ上の理由から JS によって読み取ることはできません
3. セキュア Cookie (https のみ)、サーバー側と JS の両方を作成できます。JS は HTTPS でのみアクセスできます

たとえば、Sina Cloud のページ http://snandy.sinaapp.com/php/cookie.php をテストするとき、c1、c2、c3 という 3 つの Cookie を植えました

リーリー

Firefoxでアクセス


私は3種類の品種を持っていますが、サウトは新浪雲で栽培されています。

Firebug コンソールに document.cookie と入力します


c2 と c3 にアクセスできないことがわかります。 c2 は安全な Cookie であり、https プロトコルでアクセスする必要があります。c3 は httpOnly であり、JS ではアクセスできないことに注意してください。

アクセスプロトコルを https: https://snandy.sinaapp.com/php/cookie.php に変更し、firebug コンソールに切り替えて document.cookie と入力すると、c2 が表示され、アクセスできるようになります

4. クッキーの落とし穴

1. Cookieが大きすぎる、または多すぎる場合、ページにアクセスするとエラーが報告されます

そのため、サイトのCookieは管理する必要があり、自由にCookieを植えることはできません。さらに、Cookie を指定された範囲に制限するパスを指定するようにしてください。

ウェブサイトのブラウザcookielimits.squawky.netは、各ブラウザのCookieサイズを記録します


2. 中国語を保存する場合は Unicode エンコード (encodeURIComponent) が必要です。そうしないと保存された文字が文字化けします

興味があるかもしれない記事:

  • Microsoft の使用。VBS によって実装された Cookie を使用して HTTP リクエストを送信するためのコード
  • .net ブラウザーの Cookie を取得する (HttpOnly を含む) インスタンスの共有
  • httpclient シミュレーション ログイン固有の実装 (Cookie を設定するために JS を使用する) )
  • Python は POST を模倣して HTTP データを送信し、Cookie 値を使用するメソッド
  • http://www.bkjia.com/PHPjc/1091854.html
  • www.bkjia.com
tru​​e

http://www.bkjia.com/PHPjc/1091854.html

HTTP Cookie の状態管理メカニズムの詳細な説明、Cookie の詳細な説明 「Cookie」とも呼ばれる HTTP Cookie は古くから存在していますが、まだ完全には理解されていません。最初の質問...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する Web ページのリダイレクトの一般的なアプリケーション シナリオを理解し、HTTP 301 ステータス コードを理解する Feb 18, 2024 pm 08:41 PM

HTTP 301 ステータス コードの意味を理解する: Web ページ リダイレクトの一般的なアプリケーション シナリオ インターネットの急速な発展に伴い、Web ページの操作に対する人々の要求はますます高くなっています。 Web デザインの分野では、Web ページのリダイレクトは一般的かつ重要なテクノロジであり、HTTP 301 ステータス コードによって実装されます。この記事では、HTTP 301 ステータス コードの意味と、Web ページ リダイレクトにおける一般的なアプリケーション シナリオについて説明します。 HTTP301 ステータス コードは、永続的なリダイレクト (PermanentRedirect) を指します。サーバーがクライアントのメッセージを受信すると、

ブラウザの Cookie が保存される場所の詳細な説明 ブラウザの Cookie が保存される場所の詳細な説明 Jan 19, 2024 am 09:15 AM

インターネットの普及により、ブラウザを使用してインターネットを閲覧することが生活様式になりました。ブラウザを日常的に使用する中で、オンラインショッピング、ソーシャルネットワーキング、電子メールなど、アカウントのパスワードを入力する必要がある場面に遭遇することがよくあります。この情報は、次回アクセスするときに再度入力する必要がないようにブラウザによって記録される必要がありますが、このような場合に Cookie が役に立ちます。クッキーとは何ですか? Cookie とは、サーバーからユーザーのブラウザに送信され、ローカルに保存される小さなデータ ファイルを指し、一部の Web サイトでのユーザーの行動が含まれています。

Cookie 設定に関するよくある質問と解決策 Cookie 設定に関するよくある質問と解決策 Jan 19, 2024 am 09:08 AM

Cookie 設定に関する一般的な問題と解決策、具体的なコード例が必要です インターネットの発展に伴い、Cookie は最も一般的な従来技術の 1 つとして、Web サイトやアプリケーションで広く使用されています。簡単に言うと、Cookie はユーザーのコンピュータに保存されるデータ ファイルで、ログイン名、ショッピング カートの内容、Web サイトの設定などを含むユーザーの情報を Web サイトに保存するために使用できます。 Cookie は開発者にとって不可欠なツールですが、同時に Cookie の設定が頻繁に必要になります。

C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか? C++ を使用して HTTP ストリーミングを実装するにはどうすればよいですか? May 31, 2024 am 11:06 AM

C++ で HTTP ストリーミングを実装するにはどうすればよいですか? Boost.Asio と asiohttps クライアント ライブラリを使用して、SSL ストリーム ソケットを作成します。サーバーに接続し、HTTP リクエストを送信します。 HTTP 応答ヘッダーを受信して​​出力します。 HTTP 応答本文を受信して​​出力します。

HTTP リクエストのタイムアウトに対してどのようなステータス コードが返されますか? HTTP リクエストのタイムアウトに対してどのようなステータス コードが返されますか? Feb 18, 2024 pm 01:58 PM

HTTP リクエストがタイムアウトになり、サーバーから 504GatewayTimeout ステータス コードが返されることがよくあります。このステータス コードは、サーバーがリクエストを実行しても、リクエストに必要なリソースを取得できないか、一定時間が経過してもリクエストの処理を完了できないことを示します。これは 5xx シリーズのステータス コードで、サーバーに一時的な問題または過負荷が発生し、その結果クライアントのリクエストを正しく処理できなくなったことを示します。 HTTP プロトコルでは、さまざまなステータス コードに特定の意味と用途があり、504 ステータス コードはリクエストのタイムアウトの問題を示すために使用されます。顧客の中で

ブラウザで Cookie を見つける方法 ブラウザで Cookie を見つける方法 Jan 19, 2024 am 09:46 AM

私たちはコンピューターやインターネットを日常的に使用する中で、Cookie にさらされることがあります。 Cookie は、Web サイトへの訪問、設定、その他の情報の記録を保存する小さなテキスト ファイルです。この情報は、当社へのサービスを向上させるためにウェブサイトで使用される場合があります。しかし、場合によっては、必要なコンテンツを見つけるために Cookie 情報を見つける必要があります。では、ブラウザで Cookie を見つけるにはどうすればよいでしょうか?まず、Cookie がどこに存在するかを理解する必要があります。ブラウザで

HTTP 503エラーの解決方法 HTTP 503エラーの解決方法 Mar 12, 2024 pm 03:25 PM

解決策: 1. 再試行: 一定時間待ってから再試行するか、ページを更新できます; 2. サーバーの負荷を確認します: サーバーの CPU、メモリ、およびディスクの使用状況を確認します。容量制限を超えている場合は、次のことを試してください。サーバー構成を最適化するか、サーバーの容量を増やします サーバー リソース; 3. サーバーのメンテナンスとアップグレードを確認します: サーバーが通常に戻るまで待つしかありません; 4. ネットワーク接続を確認します: ネットワーク接続が安定していることを確認し、ネットワークが正常に動作しているかどうかを確認しますデバイス、ファイアウォール、またはプロキシ設定が正しいことを確認します; 5. キャッシュまたは CDN 構成が正しいことを確認します; 6. サーバー管理者などに連絡します。

CSS レイアウトの再計算とレンダリングの仕組みを深く理解する CSS レイアウトの再計算とレンダリングの仕組みを深く理解する Jan 26, 2024 am 09:11 AM

CSS のリフローと再描画は、Web ページのパフォーマンスの最適化において非常に重要な概念です。 Web ページを開発する場合、これら 2 つの概念がどのように機能するかを理解すると、Web ページの応答速度とユーザー エクスペリエンスを向上させることができます。この記事では、CSS のリフローと再描画の仕組みを詳しく説明し、具体的なコード例を示します。 1. CSS リフローとは何ですか? DOM 構造内の要素の表示、サイズ、位置が変更されると、ブラウザは CSS スタイルを再計算して適用し、再レイアウトする必要があります。

See all articles