-
Notifications
You must be signed in to change notification settings - Fork 11
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スクリプトにおいては、以下のように参照することができます。また、ビルトイン変数はprintlnを使ってコンソールに内容を出力することが出来ます。
println(USER_AGENT)
if (USER_AGENT =~ /(iPhone|Android)/ ) {
return ["common", "common_sp"]
} else {
return ["common", "common_pc"]
}