Using client and session variables without cookies
ユーザーがブラウザでCookieを無効にすることが可能です。この場合、ColdFusionは自動的にクライアントの状態を維持することができません。クライアントの識別情報をアプリケーションページ間で渡すことで、クッキーを使用せずにクライアントまたはセッション変数を使用できます。次のようにしかし、この技術は、重大な制限があります。
クライアント変数は、彼らがクライアントデータストアで使用できないデータを残すことを除いて、効果的にセッション変数と同じです。 クライアントのシステムには識別情報が保持されないため、次回のログオン時にColdFusionで以前のクライアントでユーザーを識別することはできず、ユーザーの新しいクライアントIDを作成する必要があります。以前のセッションのユーザーに関する情報は使用できませんが、ColdFusionで削除されるまでクライアントデータストレージに残ります。 ColdFusion Administratorで[未訪問のクライアントのデータを消去する]オプションをオフにすると、ColdFusionはこのデータを決して削除しません。 したがって、ユーザーがCookieを無効にできるようにする場合は、クライアント変数を使用しないでください。クッキーなしでクライアント情報を保持するには、ユーザーに一意のIDでログインする必要があります。その後、ユーザーのIDをキーとしてユーザー固有の情報をデータベースに保存できます。
新しいリクエストにセッションまたはクライアントを示すための状態情報が含まれていないため、ColdFusionはユーザがブラウザで直接ページをリクエストするたびに新しいセッションを作成します。
注:ColdFusionを使用するには第
へのApplication.cfcでThis.setClientCookies変数を設定することにより、クッキーとしてブラウザにクライアント情報を送信することから、ColdFusionを防止またはcfapplicationタグの属性setClientCookiesすることができますクッキーを使用せずにセッション変数を使用する場合、各ページはCFIDおよびCFToken値をリクエストURLの一部として呼び出すページに渡す必要があります。ページにHTMLのhrefa =リンク、cflocationタグ、フォームタグ、またはcfformタグが含まれている場合、タグはタグURLのCFID値とCFToken値を渡す必要があります。J2EEセッション管理を使用するには、ページ要求でjsessionid値を渡します。 ColdFusionクライアント変数とJ2EEセッション変数を使用するには、URLにCFID、CFToken、およびjsessionidの値を渡します。
注:URLにCFIDとCFTOKENが指定されている場合の動作は次のとおりです。セッションが存在する場合、URLのCFIDとCFTOKENは無視されます。セッションが存在しない場合は、URLのCFIDとCFTOKENを使用してセッションを検証し、セッションが有効であればセッションが使用されます。セッションが有効でない場合、新しいセッションが作成されます。 CFIDとCFTOKENが再生されます。
ColdFusionは、次の処理を行いURLSessionFormat機能を提供します。
クライアントがクッキーを受け入れない場合は、自動的にURLに必要なすべてのクライアント識別情報を付加します。
クライアントがCookieを受け入れる場合は、情報を追加しません。 URLSessionFormat関数は、必要な識別子を自動的に判別し、必要な情報のみを送信します。また、必要な情報のみを送信し、コード化が容易なため、各URLの情報を手動でエンコードするよりも、クライアント識別をサポートするために、より安全で堅牢な方法を提供します。
URLSessionFormat関数を使用するには、関数に要求URLを囲みます。あなたが複数のURLSessionFormat機能で同じページのURLを使用する場合は
<cfform method="Post" action="#URLSessionFormat("MyActionPage.cfm")#>
は、あなたが小さなパフォーマンスの向上を獲得し、簡素化することができます。たとえば、次のcfformタグ別のページへの要求は、必要に応じて、クライアント識別を送信しますフォーマットされたページURLを変数に割り当てた場合のコード:
<cfset myEncodedURL=URLSessionFormat(MyActionPage.cfm)>
<cfform method="Post" action="#myEncodedURL#">
ColdFusionセッションおよびクッキーに関する推奨事項については、[ロックダウンガイド](http://wwwimages.adobe。 com/content/dam/acom/en/products/coldfusion/pdfs/coldfusion-2016-lockdown-guide.pdf)を参照してください。 –