Perl: Amon2::Lite で Tiny URL

tokuhirom さんのチュートリアルを追う。
http://blog.64p.org/entry/20110715/1310600765

 

Amon2::Lite とは

Sinatra 的にメインロジックを 1 ファイルにまとめてしまえる Amon2 フレーバー。
なんとテンプレート (.tt) や css、js も __DATA__ キーワード後に @@static/js/script.js みたいな感じで app.psgi に書けてしまう。
単純なサイトを作るときによさそう。

 

インストール

Amon2::Lite がいるので入れる。

$ cpanm Amon2::Lite

 

セットアップ

$ amon2-setup.pl --flavor=Lite TinyURL
$ cd TinyURL
$ tree .
TinyURL
├── Makefile.PL
├── app.psgi
├── t
│   ├── 01_root.t
│   └── Util.pm
└── xt
    └── 03_pod.t

2 directories, 5 files

DB 作る

sql/sqlite3.sql

create table tinyurl (
    key varchar(20) primary key,
    url text
);
$ sqlite3 development.db < ../sql/sqlite3.sql

app.psgi を tokuhirom さんページからコピペ。

 

起動

$ plackup

短縮 URL を生成するウェブアプリケーションが完成した。