问题标签 [cgi-application]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1357 浏览

perl - 如何使用 CGI::Application 获取上传文件的内容类型?

我正在尝试使用 CGI::Application 在 Perl 程序中处理上传的文件。我需要获取上传文件的内容类型。根据我的阅读,以下内容应该有效,但不适用于我:

事实证明,$q->uploadInfo($filename)返回undef. 也是如此$q->uploadInfo("file")

有任何想法吗?

谢谢!

0 投票
6 回答
4336 浏览

perl - 如何从命令行运行 CGI::Application 运行模式?

我的CGI::Application web-app 中有一个运行模式,我希望能够从命令行触发它,以便将其自动化。从网络应用程序的角度来看,它会进行一些处理,然后通过电子邮件发送结果。

当从 Web 界面调用时,它会传入一组参数(电子邮件地址、要运行的查询、日期等),因此需要传入这些参数。

我如何构造一个对 CGI::Application 应用程序的调用,它与我从 Web 上运行它时一样?

0 投票
3 回答
1184 浏览

perl - 如何使用 mod_perl 和 CGI​​::Application 提供临时文件下载?

mod_perl我的网络应用程序使用 CGI::Application在 Apache 上运行。我想提供生成文件的下载。过去(在我们使用mod_perl和 CGI​​::App 之前)我只是在生成 csv 文件时将STDOUT其输出。现在我要进行更多改进 - 使用 Spreadsheet::WriteExcel 创建一个 Excel 电子表格 - 我似乎无法从文件句柄中打印出来。

输出只是一个空白响应,警告也是空白。

我用来将电子表格写入文件句柄的方法几乎直接来自文档,所以我认为问题是由于我的一些 CGI::App noobery 造成的。该文档建议的文件句柄方法也mod_perl被证明是徒劳的。

我想我应该提到我在 Windows 上运行,并且我当前的解决方法是创建一个文件并为用户提供指向它的链接。然而,这带来了更多问题,涉及清除目录和何时清除,以及访问生成文件的身份验证。

建议?严厉批评?

0 投票
4 回答
231 浏览

perl - 是否有任何使用 CGI::Application 构建的开源的中型 Web 应用程序?

通过分解已经在做某事的事情并弄清楚为什么以哪种方式做出决定,我学得最好。

最近我开始使用 Perl 的 CGI::Application 框架,但发现我对文档的理解并不好(关于如何最好地构建应用程序的信息太少)。cgi-app 网站上有一些小型应用程序的示例,但它们的结构主要是为了展示一个小功能,但大部分代码都不会在生产中实际使用。其他示例非常庞大,需要太多时间来挖掘。而且它们中的大多数只是在 cgiapp 上运行的东西,但不是开源的。

因此,我正在寻找具有大多数基本功能的东西,例如用户登录、数据库访问、一些处理等;实际上用于某些东西,但不是那么大,以至于设置它们需要几个小时。

有这样的事情存在还是我不走运?

0 投票
2 回答
1037 浏览

perl - 如何使用 CGI 应用程序上传文件

您好我正在尝试使用 perl cgi-application 上传图像文件。不知道我做错了什么 - 但一个空的图像文件(具有正确的名称)被保存。


我的 $picture = $self->query->param('picture') ;
我的$缓冲区;我的 $bytesread;

打开 (OUTFILE, ">>$user_dir/profile_picture/$picture");
while ($bytesread = read($picture, $buffer, 1024)) {
print OUTFILE $buffer;
}

0 投票
2 回答
1297 浏览

perl - 使用 perl cgi-application 进行 Google 身份验证

我已经构建了一个当前在本地主机上运行的 CGI::Application 并使用了 2 种身份验证方法 -
1.通过将用户密码存储在数据库中来描述http://www.perlmonks.org/?node_id=622071
和 2. 使用 LDAP 凭据.

我一直在寻找一种简单的方法来进行谷歌身份验证,但还没有找到一种简单的方法。有人可以指出我正确的方向。

我查看了
1. Authen-GoogleAccount 和
2. net-Google-FederatedLogin

但其中任何一个都没有足够的文档。我从哪里开始?即使您有一些在 cgi::application 之外执行此操作的指针,也请告诉我

0 投票
1 回答
1198 浏览

perl - Perl CGI::Application 认证系统的建议

我正在使用 CGI::Application 构建一个 Perl 应用程序来显示软件工具,并希望允许用户在工具上添加评级和评论。理想情况下,用户需要注册才能发布。我确信这是一个相当普遍的要求,并且必须有现有的“开箱即用”解决方案,我可以使用它来为自己节省一些编码和轮子的重新发明。如果没有,我有三种可能的解决方案:

1) 在此处扩展代码:http ://www.perlmonks.org/?node_id=622071以添加身份验证系统的缺失部分

2) 使用我们的维基;让用户登录并在 wiki 上发布评论或仅利用登录系统确保只有注册的 wiki 用户才能发布

3)使用其他一些身份验证协议并从头开始创建自己的身份验证协议。

有没有人对这些选项有任何想法或经验?

0 投票
2 回答
475 浏览

perl - 如何从此 CGI::Application 示例中删除登录表单?

教程中,他创建了一个自定义登录表单,只是为了展示它是如何完成的。请搜索

如何删除自定义登录并回退到默认登录?

代码看起来像这样

更新

这里提到 CGI::Application 有一个看起来比他更好的默认登录。

第 159 行指定了一个用于生成登录表单的子例程。请注意,身份验证插件带有一个您可以使用的默认表单。我将这个包括在内只是为了演示如何创建自己的一个,以防万一你真的想要。默认的实际上看起来比我的好得多,所以你可能希望注释掉第 159 行!

0 投票
2 回答
975 浏览

perl - 从 perl CGI::Application::Plugin::JSON 传递哈希到 jquery 表单插件

我需要将哈希从服务器端传递到客户端。我分别在前端和后端使用 jquery 和 perl CGI::Application。我是使用 jquery 的初学者,因此我修改了 jquery 表单插件示例,该示例显示了如何处理从服务器http://jquery.malsup.com/form/#json返回的 JSON 数据。我尝试将给定的代码与我最喜欢的 perl Web 框架 CGI::Application 一起使用。在CGI::Application::Plugin::JSON传递标量值时效果很好,但由于缺乏文档,我无法弄清楚如何传递数组或散列或复杂的数据结构。传递哈希时,我使用以下代码片段:-

这是我在 apache 错误日志中得到的错误:

ajaxtest.pl: Odd number of elements in hash assignment at /usr/local/share/perl/5.10.0/CGI/Application/Plugin/JSON.pm line 98., referer: http://localhost/echo.html

在传递标量时,我正在使用 CGI::Application::Plugin::JSONjson_body函数。请让我知道我哪里出错了。以下是 html 文件中的 Jquery 代码,它也在表单插件站点上给出(上面给出的链接):

任何关于使用CGI::Application::Plugin::JSON复杂数据结构的建议,比如散列的散列和数组的数组都是非常受欢迎的,因为我将来会需要它。

0 投票
1 回答
590 浏览

perl - 如何在此 CGI::Application 中一次只允许一个用户?

我已经使用教程制作了一个网站,但我希望任何时候都只允许一个用户登录。

我想应该在Login.pm我包含的内容中进行此更改,但我无法弄清楚在哪里设置此限制。

更新

基于 scorpio17 的解决方案,我现在只有一个用户可以登录,如果用户记得单击注销。

现在的问题是当会话超时时如何更改 $can_login 状态。

这是更新的功能。

任何人都可以解决这个问题吗?

更新 2

我现在知道$self->authen->username它总是设置为调用运行模式undef时。mustLogin这意味着多个用户可以登录。

我已插入

问题发生的地方。

$self->cfg('SESSIONS_DIR')返回正确的路径。

知道为什么$self->authen->username设置undefmustLogin运行吗?