Documentation

You are viewing the documentation for the 2.0.8 release in the 2.0.x series of releases. The latest stable release series is 2.4.x.

§インターセプター

§onRouteRequest のオーバーライド

Global オブジェクトには、リクエストがアクションに渡される前にインターセプトして、任意のビジネスロジックを実行する方法を提供する、という重要な側面もあります。

Tip このフックはリクエストを乗っ取って、独自のルーティング機構をプラグインするという用途にも使えます。

実際に、どのようにインターセプトさせるか見てみましょう。

import play.api._

// Note: this is in the default package.
object Global extends GlobalSettings {

  def onRouteRequest(request: RequestHeader): Option[Handler] = {
     println("executed before every request:" + request.toString)
     super.onRouteRequest(request)
  }

}

アクションの合成 を使って特定のアクションメソッドへのリクエストだけをインターセプトすることも可能です。

次ページ: テスト