我无法通过Sencha执行REST请求

时间:2019-03-01 09:00:23

标签: rest extjs

我想用sencha ext js执行rest请求。因此,我创建了一个模型和一个带有代理的商店。然后,我调用了商店的加载功能。问题在于,调用后存储仍然为空。我知道这是因为我调试了它。这是代码:

var myModel = Ext.create('Ext.data.Model', {
    fields: [
        { name: 'name' },
        { name: 'age' }
    ]
});

var myStore = Ext.create('Ext.data.Store', {
    model: myModel,
    proxy: {
        type: 'rest',
        url: 'http://localhost:8080/blablabla',
    }
});

myStore.load();

URL'http://localhost:8080/blablabla'是正确的,因为当我在浏览器中键入URL时,会得到带有“名称”和“年龄”字段的json用户列表。这样服务器就可以工作。

这是我应该获取的json示例:

[ {
  "id" : 1,
  "name" : "john",
  "age": 40
}, {
  "id" : 2,
  "name" : "jack",
  "age": 30
} ]

1 个答案:

答案 0 :(得分:0)

我的Sencha代码正确。问题是未启用CORS。因此,我通过在服务器方法上方添加@CrossOrigin来解决。

@CrossOrigin
@RequestMapping
public List<Thing> getThings() {
    ...
    return myListOfThings;
}

@CrossOrigin做到了。