Skip to content

03.07.ビルトイン変数

Akinori Yamada edited this page Jan 16, 2015 · 5 revisions

Aeromockにはビルトイン変数という特殊な変数が用意されていて、以下の箇所で参照ができます。

参照可能箇所

  • テンプレートデータファイル
  • JSONデータファイル
  • routing.groovy
  • data.groovy
  • ajax.groovy
  • variable.groovy
  • カスタムタグ、ファンクションスクリプト

ビルトイン変数一覧

変数名 内容 備考
HOST Aeromock稼働ホスト名 java.lang.String localhost:3183
REMOTE_HOST リモートホスト名 java.lang.String localhost
USER_AGENT ユーザーエージェント文字列 java.lang.String Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.117 Safari/537.36
REFERER リファラ文字列 java.lang.String http://localhost:3183/mypage
REQUEST_URI リクエストURI(クエリストリングは含まない) java.lang.String /mypage/hoge
QUERY_STRING クエリストリング java.lang.String hoge1=value1&hoge2=value2
NOW 現在時刻 java.util.Date (Tue Jul 22 17:04:30 JST 2014)
PARAMETERS クエリストリングパラメータMap java.util.Map {"hoge1":"value1", "hoge2":"value2"}
FORM_DATA フォームデータパラメータMap java.util.Map {"hoge1":"value1", "hoge2":"value2"} 非推奨。0.3.0以降で削除予定
POST_DATA POSTデータパラメータMap java.util.Map {"hoge1":"value1", "hoge2":"value2"} application/json, application/x-www-form-urlencoded, multipart/form-dataをサポートします

参照例

データファイル

データファイルにおいては、${ビルトイン変数名}という形式で参照することができます。この表記方法はJava Expression Language3(JSR-341)の式言語であり、変数が持つメソッドを呼び出すことも可能です。

prop: ${REQUEST_URI}

Groovyスクリプト

Groovyスクリプトにおいては、以下のように参照することができます。また、ビルトイン変数はprintlnを使ってコンソールに内容を出力することが出来ます。

data.groovy
println(USER_AGENT)
if (USER_AGENT =~ /(iPhone|Android)/ ) {
    return ["common", "common_sp"]
} else {
    return ["common", "common_pc"]
}
Clone this wiki locally