您推荐什么Perl RESTful框架?
您好,我正在寻找一个Perl RESTful框架,它必须:您推荐什么Perl RESTful框架?,perl,rest,apache2,mod-perl2,Perl,Rest,Apache2,Mod Perl2,您好,我正在寻找一个Perl RESTful框架,它必须: 根据apache2/mod_perl2开展工作 简单点 文雅 轻点 灵活 我只是在做梦,还是可以避免“自己滚”的做法 您推荐什么框架?是一个MVC框架,您可以使用它来创建Restfull服务 它在apache2/mod_perl2下运行 它简单而优雅,但没有大多数“新”MVC框架那么多 嗯。。它很轻 不要认为它真的很灵活( 编辑: -我所说的“新”框架是那些有好的测试框架可供使用的框架(比如rails/spring/Seam,有
- 根据apache2/mod_perl2开展工作
- 简单点
- 文雅
- 轻点
- 灵活
- 它在apache2/mod_perl2下运行
- 它简单而优雅,但没有大多数“新”MVC框架那么多
- 嗯。。它很轻
- 不要认为它真的很灵活(
-我所说的“新”框架是那些有好的测试框架可供使用的框架(比如rails/spring/Seam,有了catalyst,除了正常的单元测试之外,进行测试并不容易),还有很多开发人员正在为他们构建应用程序(围绕这些框架的社区更为活跃)这就是为什么我认为Catalyst不太灵活的原因。我最喜欢的Perl web应用程序框架是。它非常轻量级(可以从中继承的单个基类)你可以在正式的MVC设计中使用它,如果你想做的话,也可以做一些特别的事情 它有一个简单的体系结构,允许您轻松添加对 (由机箱外支撑), , , , 等等 最后,对于创建类似REST的友好URL,有一个非常好的方法,它为基于URL的调度提供了一个强大的基于规则的引擎
此外,尽管名称不同,它在mod_perl 1和mod_perl 2下仍能无缝工作。我想您会发现,所有这些框都打勾了 我已经用它写了很多小的RESTful应用程序。它非常适合这个应用程序,而且使用起来很愉快 以下是更多的链接:
<Perl>
use Simple 'On::MP20';
Simple->init
</Perl>
<Location />
SetHandler perl-script
PerlHandler Simple->mp20
</Location>
使用简单的“On::MP20”;
简单->初始化
SetHandler perl脚本
PerlHandler简单->mp20
你走开!
在这里,我还想顺便提及一些其他框架,这些框架应该符合本条例草案的要求:
/i3AZ/
< P>另一个要考虑的是,它允许以非常简单的方式编写和测试RESTORY API。我已经使用()用于我的一些较小的项目。它非常优雅,很容易用它快速完成任务。它的灵感来自Ruby框架
这很容易:#!/usr/bin/env perl
use Dancer;
get '/' => sub {
'Hello world!'
};
dance;
Dancer有很好的文档记录,如果您查看测试套件,就会发现它是可信的:~500个测试,覆盖了80%以上的源代码树 它符合PSGI/Plack,并且几乎没有依赖性。1.0版应该很快发布(可能是这个周末)
请继续关注。我终于推出了自己的纯mod_perl2 RESTful API专用框架: 没有什么是内置的,除了基本的。其余部分是可扩展的(或将是可扩展的)。我看了你所有的建议,它们似乎都解决了太多的问题(DBI管理、ORM、模板引擎、嵌入式服务器……)
这就是我写这篇文章的原因。我希望您会发现它很有用。很抱歉回答得有点晚,但我描述了一个REST框架,它对我来说运行良好。它使添加新资源变得非常简单;我只需要编写特定于资源的业务逻辑;框架负责其余部分。那么你对Catalyst的看法就有问题了。它可能是所有各种web框架中最灵活的。我不知道你为什么认为测试是困难的。Catalyst,事实上,大多数perl社区都依赖于来自test::Builder、test::Harness和test::More沿袭的大量测试框架。对于网站的功能测试,我们为Selenium用户提供了Test::WWW::Selenium,对于更简单的非ajaxy网站,提供了Test::WWW::Mechaninze。然后,所有这些接口都可以在一个面向对象的测试框架中分层,其中包含像Test::Class这样的类,这是一个很棒的xunit风格的测试框架。我不太确定你在寻找什么样的测试框架,或者你只是不熟悉其中的内容。我不确定你为什么不建议Catalyst,它非常灵活,而且随着Moose的发展,它变得更加灵活。使用Catalyst,您还可以非常轻松地构建REST服务。请参阅:。至于测试,与Perl的其余部分一样,Catalyst中有大量的测试能力。看一看和相关的模块。总而言之,我想说catalyst是一个不错的选择。+1代表catalyst,但-1代表关于灵活性/可测试性的错误评论。我想我以前从未听过有人将catalyst称为“轻量级”——即使没有添加Moose,它长期以来一直是CPAN关于大规模依赖链恐怖故事的海报。(而且,如果有人在抱怨Catalyst之外的依赖链,那么他们抱怨的可能是驼鹿,所以Moosify Catalyst对此没有帮助。)
#!/usr/bin/env perl
use Dancer;
get '/' => sub {
'Hello world!'
};
dance;