【问题标题】:Which Perl session management library works well with TemplateToolkit?哪个 Perl 会话管理库与 TemplateToolkit 配合得很好?
【发布时间】:2010-11-14 15:09:16
【问题描述】:

我考虑过CGI::ApplicationCGI::Session。在这两者中,CGI::Session 似乎更有希望。但是,CGI::Application 模型似乎不适用于 Template Toolkit。 (我这样想错了吗?)

我想先评估更多的会话管理库,然后再尝试一个。有什么建议吗?我正在寻找一个与 Web 服务器无关的库,并且可以跨多个服务器工作。 Catalyst 目前不是一个选项,因为将现有代码改造成 Catalyst 处理方式需要时间。

【问题讨论】:

  • 我不明白您要求会话管理库与您的模板库一起工作的要求。您到底在寻找什么?
  • 一些会话管理库嵌入在一些大型框架中,例如 Catalyst,它要求您按照他们的方式做事。我们自己的框架使用 MVC 的 TemplateToolkit 方式(有点)。因此,我们需要一个不需要我们使用他们的做事方式的库。 (简而言之,一个松耦合的库)
  • 好的。知道了。感谢您清除它。
  • 不知道为什么您会感到迁移到 Catalyst 的压力,继续使用 CGI::Application 并没有错。它非常接近 CGI 的做事方式,有一组很好的插件和模块来做“现代”的事情。 CGI::Application 还具有基于 URL 的与 CGI::Application::Dispatch 的调度,并通过 CGI::Application::Plugin::Session 与 CGI::Session 很好地集成(以及通过 CGI::Application::Plugin::TT 的 TT当然)。 Catalyst 的学习曲线、内存使用和启动时间都高于 cgi-app。
  • 有压力,莫伊?我只是澄清一下。该评论仅适用于@manni。无论如何,感谢您的所有快速回复。非常感激。 ;-)

标签: perl template-toolkit session-management


【解决方案1】:

CGI::ApplicationCGI::Session 是非常不同的模块。 CGI::Session 是一个会话模块——除此之外它不做任何事情。 CGI::Application 是一个轻量级框架。它适用于Template Toolkit,我们中的一些人使用CGI::Application::Plugin::TT

因此,如果您只需要会话,请使用 CGI::Session。

如果您需要更好的代码结构 - 使用 CGI::Application。您甚至可以在其中使用 CGI::Session 和 CGI​​::Application::Plugin::Session。

【讨论】:

  • 好答案。正是我想知道的。 ;-)
【解决方案2】:

我使用Apache::Session 取得了一些成功。虽然这个名字讲述了一个不同的故事,但我认为它不仅仅适用于 Apache 网络服务器。

好处是您可以轻松更改会话的存储方式,而无需更改您自己的会话处理代码。例如。您可能会从将会话存储为磁盘上的文件开始,然后转移到基于数据库的系统。然后在此之后更改数据库后端。

【讨论】:

  • 我看不出你用 Apache::Session 比 CGI::Session/CGI::Application::Plugin::Session 有什么好处,因为你描述的 Apache::Session 的优点是可用的对于 CGI::Session。
  • 所以这使 Apache::Session 成为糟糕的建议和投反对票的原因?
  • CGI::Session 比 Apache::Session 开发得更好。两者都有一些优势。
猜你喜欢
  • 2016-02-10
  • 2014-09-10
  • 2010-09-11
  • 1970-01-01
  • 2015-02-03
  • 2010-09-11
  • 2011-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多