Session 使用禁用cookie的URL参数维护coldfusion j2ee会话
使用session.URLToken将会话信息附加到链接中,在启用J2EE和禁用浏览器cookie的情况下,我似乎无法使会话保持自身 由于以下限制,我需要针对这些确切标准的非常具体的解决方案:Session 使用禁用cookie的URL参数维护coldfusion j2ee会话,session,url,cookies,parameters,coldfusion,Session,Url,Cookies,Parameters,Coldfusion,使用session.URLToken将会话信息附加到链接中,在启用J2EE和禁用浏览器cookie的情况下,我似乎无法使会话保持自身 由于以下限制,我需要针对这些确切标准的非常具体的解决方案: 我们有2500多个模板,并试图避免在每个链接中添加URLSessionFormat() 我们已经在每个链接上包含了一个内部变量(link.cfm?#OurVariable#),该变量是从单个登录验证模板设置的。我们希望在必要时重用该变量以插入会话.URLToken 我们更喜欢使用J2EE。这段代码已经可以
URLSessionFormat()
李>
link.cfm?#OurVariable#
),该变量是从单个登录验证模板设置的。我们希望在必要时重用该变量以插入会话.URLToken
李>
<cfcomponent>
<cfset this.name = "test" />
<cfset this.sessionManagement = true>
<cfset this.sessionTimeout = createTimeSpan(2,0,0,0)>
</cfcomponent>
<CFOUTPUT>
<CFSET SESSION.Testme = 123 />
<a href="#URLSessionFormat("index2.cfm?somevar=test")#">link 1</a>
or this
<a href="index2.cfm?#session.urltoken#&somevar=test">link 2</a>
</CFOUTPUT>
Index.cfm:
<cfcomponent>
<cfset this.name = "test" />
<cfset this.sessionManagement = true>
<cfset this.sessionTimeout = createTimeSpan(2,0,0,0)>
</cfcomponent>
<CFOUTPUT>
<CFSET SESSION.Testme = 123 />
<a href="#URLSessionFormat("index2.cfm?somevar=test")#">link 1</a>
or this
<a href="index2.cfm?#session.urltoken#&somevar=test">link 2</a>
</CFOUTPUT>
还是这个
Index2.cfm:
<CFDUMP VAR="#SESSION#">
关闭浏览器cookie并打开J2EE会话变量后,“link 1”将在cfdump中显示“TestMe”键。“链接2”不会被删除
关闭浏览器cookie和J2EE会话变量(默认为Coldfusion CFID/CFToken会话管理)后,两个链接都会按预期显示“TestMe”键
请考虑我上面的4条标准,在提供解决方案时,为什么CF会话管理按预期工作,而J2EE不工作。
感谢您提供的任何见解 在这两种情况下,生成的URL是什么样子的?我认为他们是不同的,这就是为什么你们在JEE课程中看到不同的结果。基于此,我们可以确定一个解决方案。您使用的是哪个版本的ColdFusion?为什么不能使用
URLSessionFormat()
函数?它似乎完全符合您的要求,并且基于您的测试工作。正如我在最初的帖子中所指出的,我们试图避免使用2500个模板。这就是为什么我们不使用URLSessionFormat()
,除非我们需要。至于呈现的URL,它们在函数方法和非函数方法之间明显不同。我理解他们为什么不同。我不明白的是,为什么文档中说一个方法可以工作,而它不能。请原谅我的所有评论。我很难让StackOverflow格式正常工作。桥牌返回的双空格似乎对我不起作用。这句话应该换一行。