当前位置:  开发笔记 > 编程语言 > 正文

你推荐什么Perl RESTful框架?

如何解决《你推荐什么PerlRESTful框架?》经验,为你挑选了5个好方法。

嗨,我正在寻找一个Perl RESTful框架,必须:

在apache2/mod_perl2下工作

很简单

优雅

要轻松

变通

我只是在做梦,还是可以避免"滚动自己"的做法?

你会推荐什么样的框架?



1> 小智..:

我已经将Dancer(github)用于我的一些小型项目.它非常优雅,很容易快速完成任务.它的灵感来自Ruby框架Sinatra.

它很简单:

#!/usr/bin/env perl
use Dancer;

get '/' => sub {
    'Hello world!'
};

dance;



2> sukria..:

如果你看一下测试套件,舞者的文档和可信度都很好:约500个测试覆盖了超过80%的源代码树.

它符合PSGI/Plack并且几乎没有依赖性.版本1.0应该很快发布(可能是本周末).

见舞者网站保持关注.



3> Dave Sherohm..:

另一个需要考虑的是Mojolicious,它允许以非常直接的方式编写和测试RESTful API.



4> friedo..:

我最喜欢的Perl Web应用程序框架是CGI :: Application.它非常轻量级(您可以继承的单个基类),并且处理Web应用程序编程的重复性任务所需的最低限度,以及其他方式.您可以在正式的MVC设计中使用它,或者根据您的需要做更特别的事情.

它有一个简单的插件架构,允许您轻松添加对 Template Toolkit (开箱即用的HTML :: Template)会话, 身份验证, JSON, 流媒体等的支持.

最后,为了创建类似REST的友好URL,有一个优秀的CGI :: Application :: Dispatch,它为基于URL的调度提供了一个强大的基于规则的引擎.

此外,尽管它的名称,它在mod_perl 1和2下无缝地工作.



5> draegtun..:

我想你会发现Squatting所有那些盒子都打勾!

我用它写了很多小的RESTful应用程序.它非常适合这种情况,并且很高兴与您合作.

这里有一些更多的链接:

GitHub回购

讨论组/邮件列表

一些博文

蹲在mod_perl2上

这是一个简单的"你好世界!" 例:

use strict;
use warnings;

{
  package Simple;
  use base 'Squatting';
}

{ 
  package Simple::Controllers;
  use Squatting ':controllers';

  our @C = (
    C(
      Index => [ '/' ],
      get   => sub { 
        my ($self) = @_;
        my $v = $self->v;
        $v->{hello} = 'Hello World!';
        $self->render( 'hello' );
      },
    ),
  );
}

{
  package Simple::Views;
  use Squatting ':views';
  use HTML::AsSubs;

  our @V = (
    V(  'html',

      layout => sub { 
        my ($self, $v, @yield) = @_;
        html(
          head( title('Simple web app') ),
          body( @yield ),
        )->as_HTML;
      },

      hello => sub {
        my ($self, $v) = @_;
        p( $v->{hello} );
      },
    ),
  );
}

在相关位置保存为Simple.pm,并确保以下内容位于Apache配置中:


  use Simple 'On::MP20';
  Simple->init



  SetHandler perl-script
  PerlHandler Simple->mp20

你走吧!

在这里,我还要提及一些适合该法案的其他框架:

Mojolicious::Lite

Dancer

我说"传递提及",因为我没有使用其中任何一个,我不确定是否使用mod_perl2工作(开箱即用).仍PSGI / Plack指日可待,这将不会太久的问题;-)

/ I3az /

推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有