web.goはGo製のオープンソース・ソフトウェア。Goといえば2009年に登場したGoogleが開発するプログラミング言語だ。Cに似た構文、高速なビルド、Pythonのような柔軟さを特徴とする言語になっている。まだ開発段階ではあるが、注目が集まっている言語だ。

ピクチャ 204.png

ブラウザからアクセス

 

そんなGoを使ってWebアプリケーションフレームワークを作ったのがweb.goだ。Sinatraのようにそれ自体がWebサーバの役割に担っている。ごく小規模なWebサービスであれば、手軽に開発できるのではないだろうか。

現状ではGETまたはPOSTメソッドのみ対応している。web.Get(パターン,ハンドラ)という構文になっていて、パターンに応じて指定したハンドラが呼び出される。指定したパターン以下のURLがパラメータとして文字列で渡される仕組みだ。

ピクチャ 205.png

実行中

 

リクエストパラメータやポストされたファイル、ヘッダ情報へアクセスすることがでいる。レスポンスはCookie、ヘッダ設定、リダイレクトなどが可能だ。SCGIやFCGIとして実行することもできるので、ただのお遊びではなさそうだ。現状ではテンプレートエンジンがないが、とても興味深いソフトウェアだ。

執筆時のバージョン

 0.1.0

 

web.go - a web framework for Go

 http://www.getwebgo.com/