【问题标题】:Plack::Builder get postPlack::Builder 得到职位
【发布时间】:2012-08-28 13:07:58
【问题描述】:

有没有办法在特定方法(GET 或 POST)的构建器部分中指定,但不能同时指定两者? 我的构建器部分示例。

my $main_app=builder
{
    mount "/" => builder{$app;};
};

它处理 get 和 post 请求,我如何禁用 GET 请求的处理?

谢谢。

【问题讨论】:

    标签: perl plack psgi


    【解决方案1】:

    Plack::Builder 不提供基于 HTTP 方法路由请求的本机方式。编写处理特定方法的中间件应该非常简单。例如像

    my $post_app = ...;
    
    my $main = builder {
        enable sub {
            my $app = shift;
            sub {
                my $env = shift;
    
                if ($env->{REQUEST_METHOD} eq "POST") {
                    return $post_app->($env);
                }
    
                return $app->($env);
            }
        };
    
        ....;
    };
    

    基于 om PSGI 的现有框架可能会为基于 om HTTP 方法的路由请求提供更好的替代方案。例如,使用 Dancer 看起来很容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-15
      相关资源
      最近更新 更多