【问题标题】:I can't perform a REST request with Sencha我无法使用 Sencha 执行 REST 请求
【发布时间】:2019-07-23 06:42:25
【问题描述】:

我想用 sencha ext js 执行一个休息请求。因此,我创建了一个模型和一个带有代理的商店。然后我调用了 store 的加载函数。问题是调用后商店仍然是空的。我知道这一点,因为我调试过它。这是代码:

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' 是正确的,因为当我在浏览器中键入它时,我会得到带有“姓名”和“年龄”字段的用户 json 列表。所以服务器工作正常。

这是我应该得到的 json 示例:

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

【问题讨论】:

标签: rest extjs


【解决方案1】:

我的煎茶代码是正确的。问题是未启用 CORS。所以我通过在我的服务器方法上方添加@CrossOrigin 来解决。

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

@CrossOrigin 成功了。

【讨论】:

  • 这不是合适的开发方式。对您自己的服务器的请求不应引用域/端口,而应仅引用路径。不要使用 sencha 的应用监视服务器,而是从您自己的 Web 应用程序中提供 sencha 的工作区。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多