Sencha Touch — ошибка — восстановление в формате JSON

#javascript #json #sencha-touch #script-tag

#javascript #json #касание sencha #скрипт-тег

Вопрос:

Я связываюсь с вами, потому что я в тупике. Я пытаюсь получить данные из внешнего веб-сервиса с помощью «ScriptTag», но это не работает, потому что веб-сервис возвращает простой формат json (без JSONP).

Вы знаете, есть ли другой способ получить json с помощью sencha?

 var helloWorld = new Ext.Application({

Parking: Ext.regModel('Parking', {
    fields:[
        {name:'parkingName'},
        {name:'latitude'},
        {name:'longitude'},
        {name:'mapUrl'}
    ],
}),

launch: function() {
    this.tabs = new Ext.TabPanel({
        fullscreen: true,
        dockedItems: [{xtype:'toolbar', title:'JSON Recovery'}],
        tabBar: {
            ui: 'light',
            layout: {
                pack: 'center'
            }
        },
        items: [
            {cls:'Page1', title:'Page1', html:'Page1'},
            {
                cls: 'list',
                title: 'Page2',
                xtype: 'list',
                loadingText: 'Chargement',
                itemTpl:'<div>{parkingName}</div>',
                store: new Ext.data.Store({
                    autoLoad:true,
                    model: 'Parking',
                    proxy: {
                        type: 'scripttag',
                        url :  'http://walker.hotcity.lu/hotcity-central-server/webresources/parking/json?format-version=1_0amp;client-type=iPhone',
                        reader: {
                            type: 'json',
                            root: 'remoteObject'
                        },                      
                    }
                }),
                
            },
        ],
                        
    });

}
  

});

предупреждение: Ресурс интерпретируется как скрипт, но передается с использованием MIME-типа application / json.

ошибка: неучтенная синтаксическая ошибка: неожиданный токен :

Спасибо.

Кевин.

Ответ №1:

То, что вы ищете, — это прокси Ajax. В документах есть несколько примеров о том, как его использовать и как его настроить. По умолчанию используется JSON, поэтому, пока ваша модель соответствует информации, полученной с помощью JSON, все будет в порядке.

Еще одна вещь, о которой вы должны знать, это то, что JSONP может обойти межсайтовые скрипты, но если вы не выполняете развертывание в walker.горячий город.домен lu, тогда браузер не разрешит запрос из-за той же политики происхождения. Сервер должен будет ответить соответствующими заголовками CORS, чтобы разрешить вашему приложению доступ к данным.