Created
October 2, 2012 07:40
-
-
Save ryugoo/3817086 to your computer and use it in GitHub Desktop.
HTTP Client (Callback pattern)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| (function () { | |
| var getContent = function (paramsObj) { | |
| // HTTP Client | |
| var xhr = Ti.Network.createHTTPClient(); | |
| // Onload handler | |
| xhr.onload = function () { | |
| // 今回は Twitter のタイムライン情報 (JSON) を取ってくるので、 responseText を使う | |
| paramsObj.success(xhr.responseText); | |
| }; | |
| // Error handler | |
| xhr.error = function (xhrErr) { | |
| paramsObj.error(); | |
| }; | |
| // XHR open method | |
| xhr.open(paramsObj.method, paramsObj.url); | |
| // XHR send method | |
| xhr.send(paramsObj.params); | |
| }; | |
| var wrapper = Ti.UI.createWindow(); | |
| var base = Ti.UI.createWindow({ | |
| title: "Base", | |
| backgroundColor: "#FFFFFF" | |
| }); | |
| var button = Ti.UI.createButton({ | |
| title: "Get Content" | |
| }); | |
| button.addEventListener("click", function (clickEvt) { | |
| getContent({ | |
| method: "GET", | |
| url: "http://api.twitter.com/1/statuses/user_timeline.json?screen_name=TitaniumMobileJ", | |
| params: null, | |
| success: function (data) { | |
| // データの取得後に行いたい処理を書く | |
| data = JSON.parse(data); | |
| alert("データの取得に成功しました!"); | |
| alert(data); | |
| }, | |
| error: function (data) { | |
| // データの取得に失敗したら行いたい処理を書く | |
| alert("データの取得に失敗しました。"); | |
| alert(JSON.stringify(data)); | |
| } | |
| }); | |
| }); | |
| base.add(button); | |
| var navGroup = Ti.UI.iPhone.createNavigationGroup({ | |
| window: base | |
| }); | |
| wrapper.add(navGroup); | |
| wrapper.open(); | |
| }()); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment