2011-10-11 79 views
0

我正在尋找一種方法從服務器獲取xml數據並將其解析爲對象,以便我可以在應用程序的任何位置訪問該數據。我發現許多代碼都是通過創建模型,使用XMLReader存儲和設置代理來完成的。是的,這很好,但是創建商店和代理的壓力很大。有什麼辦法可以說這是我的XML數據的URL,讓我解析XML在一個對象。我認爲獲得JSON我們有一個像下面的方式。Sencha Touch-從服務器檢索XML數據並將其存儲在對象中

Ext.util.JSONP.request({ 
    url: '<XYZ_URL>',   
    callbackKey: 'Successcallback', 
    Successcallback: function(result) { 
      console.log(result.data); 
      // Do your thing here 

}});

在這裏,我們從服務器獲取JSON數據,並在Successcallback函數中獲取JSON數據作爲結果中的對象。然後,我可以將此結果對象保存到全局,並在任何地方使用它或遍歷。

我可以用XML數據做同樣的事嗎,或者我將XML數據作爲字符串,然後我需要手動解析它?

+0

什麼是使用商店的問題?我的意思是他們在那裏有一個原因 – Luis

+0

可以說我沒有使用列表或組件與模板定義。我有一個標籤欄和標籤的標題是從服務器以XML格式。我如何告訴tabPanel使用從服務器接收的數據作爲xml?它可能是一個帶有n個帶動態文本按鈕的工具欄。 –

回答

0

您可以發送Ajax請求給定的URL,然後在成功通知方法,你可以得到你想要的數據

 e.g. 
      Ext.Ajax.request({ 
       url: 'some_url', 
       success: function(response, opts) {                       
          // parse the responseText 
          var data = Ext.util.JSON.decode(response.responseText); 
          // save the username 
          localStorage.setItem("name", data.name); 
          localStorage.setItem("id", data.id); 
       } 
      }); 
相關問題