Titanium -- HTTPClient()で配列をPOSTする方法

(HTTPリクエストでサーバにパラメータを投げる時の処理について、どうすれば良いか迷ってたので備忘として記録)

サーバに渡したいパラメータ例

"fooname"と"id"だけなら、よくあるHttpClient()の使い方に記載されているけど
”imagename"のような配列も一緒にサーバへPOSTしたい場合はどうすればよいか?

{
"fooname" => "hoge";
"id" => 1;
"imagename" => Array( "hogeimg1", "hogeimg2" );
}

サンプルコード(モバイル側)

ポイントはJSON.stringify()を使って
JSON文字列にしてから、サーバへリクエス

var xhr = Titanium.Network.createHTTPClient();

var param = {
'fooname': "hoge",
'id': 1,
'imagename': JSON.stringify(new Array("hogeimg1","hogeimg2"))
};

xhr.open('POST',"http:// ");

xhr.send(param);

サーバ側の処理

'imagename'はJSON文字列であるためオブジェクト(配列)に変換する必要がある。
各言語で用意されたJSONデコード関数*1を利用すればよい。

*1:PHPの場合はjson_decode