Perl模块处理请求响应

时间:2014-07-19 09:35:11

标签: perl httpresponse perl-module

在OO样式中使用的最佳Perl模块是什么,用于管理使用标头,cookie,响应代码和重定向向客户端浏览器发送响应。应该是独立模块不是框架的一部分,我只使用Moose和CGI :: Simple。

我知道我可以手动发送标题和Cookie,但我希望通过简单的界面进行更多控制。

print "Set-Cookie: $n=$v;$expires;path=/\n";

print "Content-type: text/html;charset=utf-8\n\n";

界面应该像:

$response->set_header(...);
$response->set_cookie(...);
$response->set_code(404);
$response->redirect(url);
$response->content(...);

我在cpan.org上搜索了responsehttp个关键字,但没有得到有用的结果。

3 个答案:

答案 0 :(得分:2)

你可能正在寻找Plack,大多数框架都使用它来处理这个问题。虽然你真的应该使用框架。

答案 1 :(得分:1)

这个问题实际上是基于意见的。所以IMO,你正在寻找

  • Poet - 使用Plack :: *和
  • Mason正在使用Moose进行处理的内容,例如查询参数处理等等......

如果不想要Poet,你可以直接使用没有Poet的Mason和Plack,但是你失去了一个很好的配置管理,会话处理更多......

组件内部的界面就像你想要的那样,例如:

$m->redirect("http://somesite.com", 302);
my $user_agent = $m->req->headers->header('User-Agent'); #access headers
$m->res->content_type('application/json'); #set header
$m->print(JSON::XS::encode_json($data));

依旧......

答案 2 :(得分:1)

您可以使用最常见的HTTP::Response