我正在尝试进行简单的JSONP调用,以获取在远程服务器上加载的json文件。

这是我在服务器上加载的简单json文件。

{
    "login": [
        {
            "themename": "NO",
            "themeId": "1"
        }
    ],
    "homePage": [
        {
            "themename": "NO",
            "themeId": "1"
        }
    ],
    "transactionDetails": [
        {
            "themename": "NO",
            "themeId": "1"
        }
    ]
}


我的控制器代码,该代码调用此文件以获取数据

 Ext.data.JsonP.request(
    {

    url : 'http://xx.xx:8080/ThemeSelector.json',

            callback : 'someCallback' ,

            someCallback: function(success, result) {

            var text = result.responseText;

              var object = Ext.decode(text);
              themeName = object['homePage'][0].themename;

            }
        });


我收到错误"Uncaught SyntaxError: Unexpected token : "

我知道响应应该包装在对象中,但不能在json文件和我的代码中进行准确的更正。有什么帮助吗?

谢谢

最佳答案

JSONP要求响应采用JavaScript函数调用的形式,并将实际的JSON对象作为参数传递。纯JSON无法(无法)运行。

有关函数调用外观的确切详细信息(尤其是函数名称)可能有所不同,但是通常它是添加到HTTP请求中的参数。服务器应基于该参数的值构造响应。

10-01 04:25