Mojolicious::Liteがいい

会社では日本語よりもperljavascriptをよく書くけど、会社で使っているフレームワークはいわゆるオレオレフレームワークなのでそれに慣れていると家でなにかつくりたいと思ったときにもたついて困る。
で、別にperlで無くていいんだけど、せっかくなんでperlでなんか使いやすそうなの無いかなとさがしていたら
Mojolicious::Liteがあった。去年のはなし。

https://github.com/yuki-kimoto/mojolicious-guides-japanese/wiki/Mojolicious%3A%3ALite

で、つくったのがこれ

http://www15016u.sakura.ne.jp/page/810/

mixiページをスクレイピングして結果をJSONにして返してくれる。
こんな感じで書いた。(実際のコードじゃない)

#!/usr/bin/perl
use strict;
use warnings;
use FindBin::libs;

use Mojolicious::Lite;
use Hoge::Fuga

app->types->type('html' => 'text/html; charset=utf-8');
app->types->type('json' => 'application/json; charset=utf-8');

get '/page/:id' => {'id' => qr/\d+/} => sub {
    my $self = shift;
    my $id = $self->stash->{'id'};
    my $page = Hoge::Fuga->lookup('page_id' => $id);
    my $json_obj = ($page) ? $page : {'error' => 'page not found'};
    return $self->render('json' => $json_obj);
};

app->start;

実際にはapplication/jsonとかでは返していないけどきにしない。