coldfusion:为什么我的客户端变量被擦除了?

时间:2014-02-11 07:34:19

标签: coldfusion scope

在对用户进行身份验证后,他们的详细信息将存储在客户端范围中。当我们重定向到他们的仪表板时,添加到客户端范围的所有新项目都将被删除。我已经清除了我的cookie和缓存,现在很明显没有客户端可变存储区实际存储在cookie中(我在交换应用程序范围之前有一些剩余的东西)。

在我将应用程序从application.cfm更新为application.cfc

之后,这种情况开始发生

我定义了以下应用程序设置:

<cfset this.SessionManagement = true>
<cfset this.ClientManagement = true>
<cfset this.SetClientCookies = true>
<cfset this.sessionTimeout = CreateTimeSpan(0,8,0,0)>
<cfset this.applicationTimeout = CreateTimeSpan(0,8,0,0)>

你能否提出客户变量消失的原因?

1 个答案:

答案 0 :(得分:2)

经过大量的故障排除后,我发现应用程序名称正在清除客户端范围。我们的名字模仿我们的应用程序的版本和发行版号,因此它有完整的停止(可能是连字符)。在我将所有内容转换为下划线后,它开始工作。

我之所以这样做,是因为我们所有其他应用程序都使用相同的约定运行,所以我不确定它们为什么会工作而这个没有,但这就是解决方案。

<cfset this.name = "client_product_v1.6.1.0.r1.o">

成了

<cfset this.name = "client_product_v1_6_1_0_r1_o">

它开始工作了。