我是第一次用perl做一个应用程序,我想使用一个前端控制器的方法,所有的请求都通过一个脚本,该脚本根据uri委托加载哪些页面。
我的脚本是什么样子的:
use LWP::UserAgent;
use Template;
my $base_url = 'project.local/';
my $ua = LWP::UserAgent->new;
if ($ua->get($base_url . 'reports'))
{
my $reports_tt = Template->new(%options);
$reports_tt->process('reports.tt', %varz, 'reports.html') or die $reports_tt->error;
}
在我的home.html页面上,有一个指向'project.local/reports'的链接。我想加载'报告。html'页面时,这个链接被点击。使用这种方法,我可以把所有的路线放在一个地方。
但这并没有加载报告。html页面,我使用LWP::UserAgent->get()
错误的方式?我想我需要一种方法路由所有请求到我的脚本在。htaccess文件,但我不确定如何做到这一点。有人能帮忙吗?
您完全使用了错误的工具。LWP::UserAgent
是一个HTTP客户端库-它用于创建和发送HTTP请求到其他web服务器。它不能用于响应HTTP请求,也不能用于编写web服务器。
完整地解释如何用Perl编写web应用程序在这里已经超出了我的合理范围,但是您可能想看看现有的Perl web开发框架,如Catalyst, Dancer和Mojolicious。