首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Perl脚本的Web前端

Perl脚本的Web前端
EN

Stack Overflow用户
提问于 2013-06-20 23:26:08
回答 2查看 3.3K关注 0票数 0

我被要求为一个用Perl编写的脚本开发一个web前端。我不知道从哪里开始。网页如何与命令行脚本交互?

编辑:经过两周的研究,我完成了这个项目。我寻找的基本答案是:使用html开发网页,使用cgi与perl脚本通信,并重新构建脚本以处理网页。感谢大家的帮助,这对我有一定的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-20 23:28:45

要让Perl脚本通过internet与web应用程序交互,请执行以下操作:

看看这里的my example code

我使用HTTPLWP Perl模块与this web app进行交互。

它在邮寄一个表格。

基本上,这个脚本所做的是,它正在迭代Qt翻译文件的列表,并将其POSTing到这个在线web应用程序,该应用程序正在使用Bing translating API进行翻译。然后脚本获取翻译后的文件并将其保存到硬盘上。在POST表单中,它还指定了源语言和目标语言是什么。因此,这是一个运行在你的PC上的脚本示例,它与互联网上的web应用程序进行交互,包括发送数据和文件以及接收它们。

这里有一个关于这个主题的很好的book chapter

要使用Perl开发web应用程序:

在Apache中使用modperl。这个的wikipedia page也有一些信息。

另一种方法是使用Perl编写CGI脚本。这是一个tutorial,这个wikipedia page for this也很有用。如果您不确定什么是CGI、read thisthis

另一种方式是使用Perl web框架,如DancerMojoliciousCatalyst

票数 3
EN

Stack Overflow用户

发布于 2013-06-20 23:40:26

这有两个方面。

编写web前端

一般来说,您应该使用Plack/PGSI来实现这一点。它充当中间件层,允许您以多种方式运行Perl web应用程序(我通常选择FastCGI,其他选项包括mod_perl和CGI)。

您可以使用诸如DancerCatalyst这样的框架(它们在幕后使用Plack ),但它们可能是过度杀伤力(取决于脚本的作用)。

如果你的需求是非常基本的,你可以使用CGI而不是Plack ( CGI module使得这很容易)。CGI的效率不是很高,但它很容易配置。除非您频繁调用脚本或脚本的启动时间较长,否则您不会注意到效率低下。

访问现有脚本

对于您的web应用程序来说,最快捷的方式就是生成一个shell并在其中运行它。您可以使用backticks, system or exec,或者,如果您想要更多的控制,可以使用IPC::Run

最健壮的方法是将脚本的业务逻辑分解为a module,然后重写命令行程序以解析参数,然后涉及模块中的适当函数。然后,您可以对web应用程序执行相同的操作(不同之处在于如何呈现输入和输出)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17217687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档