Cookiesまとめ

2634 ワード


Cookieは、Webアプリケーションがユーザー関連情報を保存するために有用な方法を提供します.たとえば、ユーザーがサイトにアクセスすると、Cookieを使用してユーザープリファレンスまたはその他の情報を保存できます.これにより、ユーザーが次回サイトにアクセスすると、アプリケーションは以前に保存した情報を取得できます.
本文の概要はCookieがASP.NETアプリケーションでのアプリケーションは、ASP.に表示されます.NETでCookieを適用する技術の詳細、例えばCookieを作成してからそれらを読み取る.また、Cookieの様々な特性や特殊な状況、ASPについてもご紹介します.NETのCookieへのサポート.

Cookieとは?


Cookieは、ユーザーの要求とページがWebサーバとブラウザの間で伝達される小さなテキスト情報です.ユーザーがサイトにアクセスするたびに、WebアプリケーションはCookieに含まれる情報を読み取ることができます.
ユーザーがWebサイトへのアクセスを要求したとします.com上のページがある場合、アプリケーションがそのユーザーに送信するのは1つのページだけでなく、日付と時間を含むCookieもあります.ユーザーのブラウザは、ページを取得すると同時にこのCookieを取得し、ユーザーのハードディスク上のフォルダに保存します.
その後、ユーザーがサイトのページに再度アクセスする場合は、URL www.contosoを入力します.comの場合、ブラウザはそのURLに関連付けられたCookieをローカルハードディスク上で検索します.Cookieが存在する場合、ブラウザはページリクエストとともにサイトに送信し、アプリケーションはユーザーが最後にサイトにアクセスした日時を決定します.これらの情報に基づいてユーザーにメッセージを送信したり、期限切れを確認したり、他の有用な機能を実行したりすることができます.
Cookieは特定のページではなくWebサイトに関連付けられているため、ユーザーがサイト内のどのページを閲覧するように要求しても、ブラウザとサーバはwww.contosoを交換する.comのCookie情報.ユーザーが他のサイトにアクセスすると、各サイトはユーザーブラウザにCookieを送信し、ブラウザはこれらのCookieをそれぞれ保存します.
以上がCookieの基本的な動作原理です.では、Cookieにはどんな用途があるのでしょうか.最も根本的な用途は、CookieがWebサイトの訪問者に関する情報を保存するのに役立つことです.より要約すると、Cookieは、Webアプリケーションの連続性を維持する(すなわち、「ステータス管理」を実行する)方法である.ブラウザとWebサーバは、短い実際の情報交換段階を除いて常に切断され、ユーザがWebサーバに送信する各リクエストは、他のすべてのリクエストとは無関係に個別に処理される.しかし、ほとんどの場合、Webサーバがページを要求したときに認識する必要があります.例えば、ショッピングサイト上のWebサーバは、ショッピングカートおよび他のユーザ関連情報を管理できるように、各ショッピング者を追跡する.したがって、Cookieの役割は名刺に似ており、アプリケーションが実行を継続する方法を決定するのに役立つ識別情報を提供しています.
Cookieを使用すると、Webサイトにあなたを記憶させるためにさまざまな目的を達成できます.たとえば、世論調査を実施するサイトでは、ブラウザが投票に参加しているかどうかを示すCookieをブール値として簡単に利用することができ、投票を繰り返すことを避けることができます.ユーザーにログインを要求するサイトでは、Cookieを使用してログインしたかどうかを確認できます.これにより、毎回証明書を入力する必要はありません.
ページのResponse(英語)プロパティを使用してCookieを作成できます.このプロパティは、ユーザーがページからブラウザに表示される情報に情報を追加できるようにします.ResponseオブジェクトはCookies(英語)という集合をサポートし、ブラウザに書き込むCookieを追加できます.
注意:以下で説明する
Responseオブジェクトと
Requestオブジェクトは、HttpResponse(英語)とHttpRequest(英語)クラスインスタンスを含むページのプロパティです.ドキュメント内で検索するには
Responseと
Requestの詳細は、「
HttpResponseと
HttpRequestの下の内容.
CookieをResponseに追加するには、さまざまな方法があります.Cookies集合中です.次の例では、このタスクを完了する2つの方法について説明します.
Response.Cookies("userName").Value = "mike"
Response.Cookies("userName").Expires = DateTime.Now.AddDays(1)
  Request       Cookie       Response       Cookie        。           ,        “username”  Cookie          Label
Request.Cookies("userName") Is Nothing Then
   Label1.Text = Server.HtmlEncode(Request.Cookies("userName").Value)