3

我用这个脚本围绕常见的 cfqueries 和我的导航栏代码创建了一个 Web 应用程序。

<cfcache action="clientcache" timespan="#createtimespan(0,1,0,0)#">

在登出页面上,我<cfset StructClear(Session)>用来清除会话数据。我还想清除缓存并使用<cfcache action="flush">.

但是,某些东西已关闭,会话未清除,客户端无法退出应用程序。当我删除 cfcache 标记时,客户端可以注销,但系统运行速度非常慢。

如何使用 cfcache 标记使其正常工作?提前致谢。

4

1 回答 1

3

清除会话范围不会结束会话,它只是清除会话范围内的变量。会话范围是可用于会话的东西,但它实际上并不代表会话本身。

您可能想使用sessionInvalidate()使会话无效。我没有结合基于会话的缓存对此进行测试,但假设它会旋转CFIDCFTOKENcookie,因此应该可以处理任何客户端内容。注意文档说它只适用于 CF 会话,而不适用于 J2EE 会话。这可能是您的考虑因素,也可能不是。

于 2015-01-07T07:13:25.170 回答