perl – 路由到Mojo中的静态文件

前端之家收集整理的这篇文章主要介绍了perl – 路由到Mojo中的静态文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个基于mojolicIoUs的小应用程序.我在公共目录中有index.html.当用户要求’/’时,我想要有这个文件的路由.

我写了两个解决方案,但我不喜欢它们.

首先解决方案 – 添加简单控制器

sub stratup {
  //...
  $r->get('/')->to('general#index_html');
  //...
}

package MyPackage::General;

use Mojo::Base 'MojolicIoUs::Controller';

use strict;
use warnings;

sub index_html {
    my $self = shift;
    $self->render_static('index.html');
    return;
}

1;

第二个解决方案 – 添加钩子

sub startup {
    my $self = shift;

    $self->hook(before_dispatch => sub {
            my $self = shift;
            if ($self->req->url eq '/') {
                $self->req->url( Mojo::URL->new('/index.html') );
            }
        });

我想要的是:

$r->get('/')->to('/index.html');

或类似的东西.

附:我知道,通常使用Nginx / apache,但我使用morbo来运行代码.

解决方法

你要:

$r->get('...')->to(cb => sub {  
     my $c = shift;                                   
     $c->reply->static('index.html')                
});

(只要你在Mojolicous之后5.45 2014-09-26)

猜你在找的Perl相关文章