在登录时,coldfusion服务器分配给我一个CFID
和CFTOKEN
。稍后使用这些CFID
和CFTOKEN
如何检查我的会话是否仍然存在。检查会话是否仍然存在
换句话说,我想,将采取CFID
和CFTOKEN
,并告诉我们,如果涉及到这些CFID
和CFTOKEN
会话仍然存在或不是一个函数。
感谢
在登录时,coldfusion服务器分配给我一个CFID
和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>
是的,这是最简单的方法。但我期待着会有一个合适的方式。例如coldfusion功能等。 –
我会接受你的答案,除非有人发布正确的方式。谢谢 –
真的,这是正确的方法。你可以做'StructKeyExists(session,'anyvaluethatshouldexist')',但是这与Chris在 –
没有什么克里斯的答案是错误的,通常是检查会话时的标准规范。
这两个cookie旨在将您的浏览器与会话“链接”,而不是实际维护会话(实际上,我相信这些cookie会在30年后过期(?),甚至会被忽略,如果我没有弄错,请重新使用J2EE session management
)。从docs:
要使用客户端和会话变量,ColdFusion的必须能够 识别客户端。它通常由客户端的系统上设置以下两个 cookie值这样做:
CFID:一个顺序客户标识符
CFTOKEN:的随机数的客户端安全令牌这些cookies唯一识别客户端到 ColdFusion,它还维护变量的副本,作为会话和客户端作用域的一部分 。
正如你可以阅读here,本纳德尔做了一些玩弄CFID
和CFTOKEN
其中CF使用的相同CFID
和CFTOKEN
饼干它已经过期后,创建新的会话。
至于你“的ColdFusion正确”的方式,你可以考虑使用CFLOGIN和other security tags这意味着可以协助处理身份验证,但我不相信很多人使用它,因为维护您的会话克里斯很容易证明。
你能否指定你想实现的更高目标?这可能会给你更多的答案。 –
从移动应用程序我想发送到服务器的电话,以检查我的会话是否仍然存在或不。如果不是,我会将用户发送到登录屏幕。 –
只需在用户登录时将自定义会话变量'Session.HasUserLogedIn'设置为'true'。每当一个请求从移动应用程序进入服务器时,您需要检查该变量是否具有“true”的值,如果是,服务器用户如果没有,则会话过期;将她重定向到登录屏幕。我在这里错过了什么吗? –