Я новичок в Sencha Touch и пытаюсь понять, как он работает с веб-сервисами.Мой следующий код прекрасно работает с xml-файлом, размещенным на моем локальном веб-сервере.Когда я пытаюсь работать с публичным веб-сервисом, я ничего не получаю.Это странно, потому что xml-файлы абсолютно одинаковы и отличается только одна строка кода.Я имею в виду, что если разместить следующий xml-файл на веб-сервере и установить его в качестве URL-адреса прокси, все будет в порядке, и данные будут показаны.
Вот мой js-код:
Ext.require([
'Ext.Panel',
'Ext.tab.Panel',
'Ext.Ajax'
]);
Ext.application({
name: 'Sencha',
launch: function() {
Ext.regModel('XMLUser', {
fields: ['ID', 'CUSTOMERID', 'TOTAL']
});
var XMLStore = new Ext.data.Store({
model: 'XMLUser',
implicitIncludes: true,
method:'get',
proxy: {
type: 'ajax',
url : 'http://www.thomas-bayer.com/sqlrest/INVOICE/605',
//url: 'test1.xml',
reader: {
type : 'xml',
record: 'INVOICE'
}
},
autoLoad: true
});
var XMLTpl = new Ext.XTemplate(
'<tpl for=".">',
'<div class="id-class" id="{ID}">{ID}',
'<div>{CUSTOMERID}',
'<div>{TOTAL}',
'</tpl>'
);
Ext.create("Ext.TabPanel", {
fullscreen: true,
tabBarPosition: 'bottom',
items: [
{
xtype: 'list',
title: 'Blog',
iconCls: 'home',
itemTpl: XMLTpl,
store: XMLStore,
singleSelect : true
}
]
}).setActiveItem(0);
}
});
Вот пример XML-файла (и вы получите его по адресу: http://www.thomas -bayer.com / sqlrest / INVOICE / 605 ):
<?xml version="1.0"?><INVOICE xmlns:xlink="http://www.w3.org/1999/xlink">
<ID>605</ID>
<CUSTOMERID xlink:href="http://www.thomas-bayer.com/sqlrest/CUSTOMER/505/">505</CUSTOMERID>
<TOTAL>209505</TOTAL>
</INVOICE>