未解析JSON响应

时间:2012-09-11 14:17:35

标签: jsonp sencha-touch-2

我正在使用Sencha Touch 2.0开发一个应用程序,它应该通过驻留在不同域上的Web服务来解析JSON。

我无法解析JSON。如果我使用名称为titleauthor description link等的节点,那么它可以完美运行。

但是,如果我为节点使用其他名称,那么它不会显示任何内容。

以下是我正在尝试解析的JSON响应:

http://stassuet.byethost15.com/services/test/index.php

这就是我正在做的解析Sencha应用程序中的响应:

Ext.define('GS.store.MyStore', {
    extend: 'Ext.data.Store',

    requires: [
        'GS.model.MainEvent',
        'Ext.data.proxy.JsonP',
        'Ext.data.proxy.Rest'
        //'GS.util.JsonpX'
    ],

    config: {
        autoLoad: true,
        model: 'GS.model.MainEvent',
        storeId: '55',

        headers: {
            "Accept": "text/xml"
            //"access-control-allow-origin": "*",
            //"Origin": "goodnews.pk",
            //"Referer": "goodnews.pk"
        },

        method: 'GET',
        callbackKey: 'myFunction',

        proxy: {
            type: 'jsonp',
            url: 'http://stassuet.byethost15.com/services/test/index.php',

            reader: {
                type: 'json',
                rootProperty: 'albums.images'
            }
        }
    }
});

我哪里错了?

1 个答案:

答案 0 :(得分:0)

即使您不需要它们,您似乎也设置了很多配置。例如:

  • 标题
  • 方法
  • callbackKey

这是否有原因?

无论如何,使用这个类,一切都按照它应该加载:

Ext.define('Example.store.SO', {
    extend: 'Ext.data.Store',

    config: {
        autoLoad: true,
        fields: [
            'name',
            'author',
            'last_modified'
        ],
        proxy: {
            type: 'jsonp',
            url: 'http://stassuet.byethost15.com/services/test/index.php',
            reader: {
                rootProperty: 'albums.images'
            }
        }
    }
});