2015年4月12日日曜日

Titanium StudioでHTTPClientを利用

Titanium StudioでHTTPClientを作成する方法に関するメモです。
生成時にまとめて引数を指定する方法もありますが、私はだいたい生成した後に設定を入れています。

var client = Titanium.Network.createHTTPClient();
client.open('POST',"http://example.com/"); //POST or GET
client.onload = function(){
    json = JSON.parse(this.responseText);
    Ti.API.info(this.responseText);
    client.onload=null;
    client.onerror=null;
    client=null;
};
client.onerror = function(error){
    Ti.API.info(error.status);
    client.onload=null;
    client.onerror=null;
    client=null;
};
var params = {data : "test data"}; 
client.send(params);

まず「Titanium.Network.createHTTPClient」でHTTPClientを生成した後、「open」でアクセスするURLとメソッド(普通はGETかPOST)を指定します。
「onload」と「onerror」はアクセス成功時と失敗時に実行する関数を指定しています。 「onload」では「this.responseText」でアクセスしたURLの中身にアクセスできます。
また、どちらも最後にclient.onload、client.onerror、clientにnullを代入しています。これは、こうしないとメモリが解放されず、メモリリークを起こすと言う話を聞いたので、お呪いとして入れてあります。正確な検証は行っていません。
最後に、POSTの場合はPOSTで送信するデータを生成して、「send」で送信しています。

0 件のコメント:

コメントを投稿