ログイン時に、coldfusion サーバーは私に aCFID
と a を割り当てますCFTOKEN
。後でそれらを使用してCFID
、CFTOKEN
セッションがまだ存在するかどうかを確認するにはどうすればよいですか。
言い換えれば、セッションがそれらに関連し、まだ存在するかどうかCFID
を伝える機能が必要です。CFTOKEN
CFID
CFTOKEN
ありがとう
ログイン時に、coldfusion サーバーは私に aCFID
と a を割り当てますCFTOKEN
。後でそれらを使用してCFID
、CFTOKEN
セッションがまだ存在するかどうかを確認するにはどうすればよいですか。
言い換えれば、セッションがそれらに関連し、まだ存在するかどうかCFID
を伝える機能が必要です。CFTOKEN
CFID
CFTOKEN
ありがとう
これを実現する最も簡単な方法は、ユーザーのログイン時にセッションにフラグを設定することです。
例えば
<cfset session.loggedin = true />
次に、ユーザーがまだ有効なセッションを持っているかどうかを確認したいときに実行できます
<cfparam name="session.loggedin" default="false" />
<cfif NOT session.loggedin>
<!--- do something here --->
</cfif>
Chris の回答に問題はなく、通常、セッションをチェックするときの標準的な基準です。
これらの 2 つの Cookie は、ブラウザーをセッションに「リンク」するためのものであり、実際にそのセッションを維持するためのものではありません (実際、これらの Cookie は 30 年 (?) で有効期限が切れるように設定されており、使用している場合でも無視されますJ2EE session management
。間違っていません)。ドキュメントから:
クライアント変数とセッション変数を使用するには、ColdFusion がクライアントを識別できる必要があります。これは通常、クライアントのシステムで次の 2 つの Cookie 値を設定することによって行われます。
CFID:シーケンシャルなクライアント識別子
CFToken:乱数のクライアント セキュリティ トークン これらの Cookie は、ColdFusion に対してクライアントを一意に識別し、変数のコピーを Session および Client スコープの一部として保持します。
ここで読むことができるように、Ben Nadel は、有効期限が切れた後に CF が同じCookieCFID
とCookie を使用して新しいセッションを作成する場所をいじりました。CFTOKEN
CFID
CFTOKEN
「ColdFusion の適切な」方法については、認証の処理を支援することを目的としたCFLOGINやその他のセキュリティ タグの使用を検討できますが、クリスが示したようにセッションを維持するのは非常に簡単であるため、多くの人がそれを使用しているとは思いません。