Play framework ドキュメント読解メモ-2.HTTP ルーティング
document2:HTTP ルーティング
- Routerは、アクション(HTTPリクエストをpublicでstaticなメソッド)の呼び出しに対応付けるコンポーネント。
- HTTPイベントは以下の要素を含む。
- クエリ文字列を含んだパス( /clients/1542 等)
- HTTPメソッド (GET, POST, PUT, DELETE )
(1).REST について
- REST (Representational state transfer)。
- アプリケーションが主な REST 設計原理に従うなら、そのアプリケーションは RESTful
- Play フレームワークを使うと、容易に RESTful アプリケーションを構築することができる。
(2).routes ファイルの構文
- conf/routesで管理。アプリで必要な全てのルートを記載。
- HTTPメソッドの記載ルール
- GET, POST, PUT, DELETE, HEAD, *(全て)
- URIパターンの記載ルール
- 設定内容に正規表現を含む事も可能。
- Javaの呼び出し定義
- アクションメソッドは Controller クラスの public static voidなメソッドであること。
- Controller クラスは controllers パッケージに定義しなければならず、また、 play.mvc.Controller のサブクラスでなければならない。
- 404アクション
- 静的引数の割り当て
- 変数とスクリプト
- テンプレートと同様、 routes ファイルにおいても以下の記法を使うことができる。
- 変数に ${ … } 構文
- 式に %{ … } 構文
(3).ルーティングの優先順位
- 競合がある場合は、(宣言した順番に従い) 最初のルートが使用される。
(4).静的リソースの配信
(6).リバースルーティング : URL の生成
- Java 呼び出し中に URL を生成するのに Router が使用できる。
(7).content type の設定
- Play は request.format に従って HTTP レスポンスの メディアタイプ を選択。
- Play に対するリクエストのデフォルトフォーマットは html
(8).HTTP コンテントネゴシエーション
- Play が他の RESTful アーキテクチャと共通していることのうちのひとつは、HTTP を隠そうとしたり、HTTP の上に抽象層を置こうとしたりせず、HTTP の機能を直接使用するということ
何は無くともapplicatoin.confファイルの把握に尽きる。後は正規表現を使うようなケースと動的・静的要素をどう構成するか。いや、その前にRESTを深く理解すべきか?

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)
- 作者: 山本陽平
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/08
- メディア: 単行本(ソフトカバー)
- 購入: 143人 クリック: 4,320回
- この商品を含むブログ (183件) を見る