2015-04-02 107 views
0

我希望在Coldfusion中处理会话超时的一些想法。Coldfusion会话超时

现在,当用户登录时,我将session.LoggedIn设置为true,当然,当会话超时时,它将更改为false。我所有的Coldfusion页面都被编码以检查这个变量,如果它是假的,它会重定向到Access Denied页面。我将该代码更改为重定向到index.cfm,在那里验证其凭据,并将其重定向回其主页。这样做的问题是,如果他们在他们的某个应用程序中并且他们的会话过期,当他们点击某些内容时,他们会被带回他们的主页。

我尝试在Application.cfc中的OnSessionEnd函数中使用cflocation标记,但当然不起作用。这不是一个真正的关键问题,但我希望我可以从论坛中获得一些关于如何在您的环境中处理这些问题的想法。

感谢

+0

首先,这不是论坛。这是一个问答网站。其次,您应该向我们提供一些您的代码,以便我们能够更好地帮助您找到针对您的特定问题的答案。 – 2015-04-02 19:05:29

+0

你所有的ColdFusion页面都被编码来检查这个变量吗?听起来像很多重复的代码。你熟悉Application.cfc中的'onRequestStart'函数吗?此外,当会话超时时,会话范围可能为空,因此依靠session.LoggedIn等于false可能无法达到您所期望的效果。 – 2015-04-02 19:06:27

+0

toleolu - 提及Q&A站点区别的原因是,如果您来自论坛,Stack Overflow具有与您预期不同的一组规则。尽管上述确实是一个有效的问题,但“可以写成”,可能会被视为[“off-topic”](http://stackoverflow.com/help/on-topic),并有可能关闭。典型的问题应该包括一些代码来证明问题,就像你以前的问题一样。只是提及它,所以它不会让你感到惊讶。 – Leigh 2015-04-03 16:28:10

回答

1

session范围内被更新在每一页上点击,或会话范围的访问。所以,如果您将会话超时设置为10分钟,并且他们每9分钟刷新一次页面,则会话将被更新。他们永远不会超时。

会话超时不会从会话创建时开始。

+0

这都是事实。我不确定它是否与问题有关。 – 2015-04-02 19:37:59

+0

Wow Evik,并不意味着通过将此论坛称为论坛来喋喋不休,对此抱歉。你是如何训练你的用户如此好以至于他们完成后关闭他们的应用程序的?这将解决我的问题,因为我的用户倾向于打开应用程序,做他们需要做的事情,然后开始做其他事情。届时会议超时。 Dan,我在Application.cfc中有onRequestStart,但并不真正熟悉它的功能。它现在的所有内容都是cfargument name =“targetPage”type =“String”required =“true”我会研究这些内容并回传。谢谢 – toleolu 2015-04-02 22:34:15

+0

你丝毫没有rat my我的笼子。论坛和问题/答案网站之间存在重要区别。我想一个编码器会很感激被指出的。 – 2015-04-02 22:54:12