Cookies

Cookies コレクションは、HTTP 要求の中で送信された cookies の値を取得できるようにします。

構文

Request.Cookies(cookie)[(key)|.attribute]

パラメータ

cookie

値を取得する cookie を指定します。

key

cookie 辞書からサブキーの値を取得するために使用する省略可能なパラメータです。

attribute

cookie 自体に関する情報を指定します。次のいずれかを属性パラメータに指定できます。

名前

説明

HasKeys

(読み取り専用) cookie にキーが含まれているかどうかを指定します。

解説

cookie 辞書のサブキーにアクセスするには、key に対応する値を指定します。key を指定せずに cookie 辞書にアクセスすると、すべてのキーが 1 つのクエリー文字列として返されます。たとえば、MyCookieFirstSecond という 2 つのキーがあり、Request.Cookies 呼び出しの中でこれらのキーのどちらかを指定しないと、次の文字列が返されます。

First=firstkeyvalue&Second=secondkeyvalue
 

同じ名前を持つ 2 つの cookies がクライアント ブラウザから送信された場合、Request.Cookies はより深いパス構造を持つ cookies を返します。たとえば、2 つの cookies が同じ名前で、一方のパス属性が /www/、もう一方のパス属性が /www/home/ であるとすると、クライアント ブラウザは両方の cookies を /www/home/ ディレクトリに送信しますが、Request.Cookies は後者のほうの cookie だけを返します。

cookie が cookie 辞書であるかどうか (cookie がキーを持っているかどうか) を調べるには、次のスクリプトを使います。

<%= Request.Cookies("myCookie").HasKeys %> 
 

myCookie が cookie 辞書であれば、上のスクリプトの値は TRUE に評価され、そうでなければ FALSE に評価されます。

ループを使うと、Cookie コレクション内のすべての cookies や、cookie 内のすべてのキーを調べることができます。ただし、キーを持っていない cookie に対しては何も出力されません。これを防ぐには、.HasKeys の構文を使って cookie がキーを持っているかどうかを先にチェックしておきます。以上の例を次に示します。

<% 
' cookie コレクション全体を出力する
For Each cookie in Request.Cookies
If Not cookie.HasKeys Then
' cookie 文字列を出力する %>
<%= cookie %> = <%= Request.Cookies(cookie)%>
<% Else
' cookie コレクションを出力する
For Each key in Request.Cookies(cookie) %> <%= cookie %> (<%= key %>) = <%= Request.Cookies(cookie)(key)%>
<% Next
End If
Next
%>

次の例は、MyCookie の値を Web ページに出力します。

ここに myCookie という名前の cookie の値を表示します:  
<%= Request.Cookies("myCookie") %>

対象

Request オブジェクト

関連項目

ClientCertificateFormQueryString ServerVariables


(C) Microsoft Corporation. All rights reserved.