我们刚刚在计算机科学课上完成了第一个主要的 Perl CGI 作业。我们的任务是创建一个 mp3 共享站点,允许用户创建帐户、登录、共享 mp3。必须显示当前用户的统计数据、可用的 mp3 等。所有操作都必须写入日志文件。我们的代码必须是安全的。

到目前为止,我已经将每个操作单独实现为它们自己的 CGI 脚本。例如,我有一个绘制登录表单、注册表单的脚本,一个允许 mp3 上传的脚本,以及另一个执行 mp3 服务的脚本。我还创建了一个模块,每当我调用它的实例时,它都会将相关信息发布到日志文件中。然而,每个脚本都是单独的,但登录屏幕除外,它绘制一个表单,然后发布到一个login.cgi。帐户生成的工作原理相同。但是,在大多数情况下,每个人都单独行动。

我的问题:如何将其链接在一起,以便除非用户登录,否则不允许执行任何操作?我假设我应该使用登录脚本(接收后操作的脚本)来驱动所有内容,但我该怎么做呢?我真的很不知所措。我想让用户登录,绘制一个带有选项的主页(添加 mp3、收听 mp3、显示统计数据等)。我最好绘制某种形式并将操作设置为不同的脚本吗?我如何处理这些脚本的返回?cookie 会以某种方式提供帮助吗?

其他相关信息:到目前为止,我已经使用该网站上的 ovid 教程和 Lincoln Stein 的书在 CGI.pm 上完成了大部分工作。

有帮助吗?

其他提示

您想要实现的通常称为“会话管理”。

这里 (how-can-i-add-session-management-to-a-simple-perl-cgi-web-page)对于之前的SO问题

您可能还想查看这些页面以获取一些背景知识。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top