我正在寻找解决方案,以便在用户关闭浏览器时如何让ColdFusion结束用户的会话。在Coldfusion中退出浏览器时终止会话变量
换句话说,当用户退出浏览器时,我想让他们重新登录。
我已经尝试了许多解决方案无济于事。
任何帮助表示赞赏。
下面是我在application.cfm中插入的最新代码,它将重置会话变量。不幸的是它没有奏效。
<cfif IsDefined("Cookie.CFID") AND IsDefined("Cookie.CFTOKEN")>
<cfset Variables.cfid_local = Cookie.CFID>
<cfset Variables.cftoken_local = Cookie.CFTOKEN>
<cfcookie name="CFID" value="#Variables.cfid_local#">
<cfcookie name="CFTOKEN" value="#Variables.cftoken_local#">
</cfif>
<CFPARAM NAME="session.allowin" DEFAULT="false" />
<CFPARAM NAME="session.user_id" DEFAULT="0" />
<cfif session.allowin neq "true">
<cfif ListLast(CGI.SCRIPT_NAME, "/") EQ "login.cfm">
<cfelseif ListLast(CGI.SCRIPT_NAME, "/") EQ "login_process.cfm">
<cfelse>
<!--- this user is not logged in, alert user and redirect to the login.cfm page --->
<script>
alert("You must login to access this area!");
self.location="login.cfm";
</script>
</cfif>
</cfif>
J2EE会话变量您是否尝试切换到的Application.cfc和使用OnSessionStart法? –
这并不直接回答你的问题,但它应该为你提供一个相关的出发地... http://www.bennadel.com/blog/1847-explicitly-ending-a-coldfusion-session.htm –