最小限のコード

ソース

1import jp.ku6.raptan.core;
2
3void main()
4{
5    // リクエストの処理
6    // 今回の場合、http://hogehoge/fastcgi/tutorial1.fcgiに
7    // アクセスされた時この関数が実行されます
8    string action(Request request, Response response)
9    {
10        // ステータスコード200を設定 (200の場合は省略可)
11        response.statusCode = Response.StatusCode.OK;
12
13        // Content-Typeを設定
14        response.contentType = "text/html; charset=UTF-8";
15
16        // 出力するデータを追加
17        response.append("Hello work!!");
18
19        // 内部リダイレクトを使わない場合はnullを返す
20        return null;
21    }
22
23    // Raptan生成
24    // 引数はファイルアップロード時の設定。順に下記の通り。
25    // リクエストパラメータ解析の作業領域(2の累乗に補正されます)
26    // アップロードされたファイルをディスクに書き出す閾値
27    // アップロードされたファイルをディスクに書き出す際のディレクトリ
28    auto raptan = new Raptan(8192, 0, "/tmp/uploaded/");
29
30    // リクエストのパスに対して実行するdelegateを割り当てる
31    raptan.setAction("/fastcgi/tutorial1.fcgi", &action);
32
33    // スレッドを作成して処理を開始
34    raptan.start();
35
36    // スレッド終了を待機
37    raptan.join();
38}

実行結果

上記をコンパイルし、CGIとしてアクセスすると下記が表示されます。
Hello work!!