javascript - Ember.js 模型保存不向服务器发送数据

标签 javascript node.js express ember.js ember-data

我目前正在使用带有 Express 的 Ember.JS 和 NodeJS 构建一个小型演示应用程序。我构建了一个简单的模型并创建了一个 Action 来保存它。

该组件有一个名为recipe 的属性,它是我定义的模型的一个实例。保存操作非常简单:

save() {
  this.get('recipe').save();
}

在 Chrome 开发工具中查看我的网络选项卡,我可以看到请求负载中的数据。但是,我无法访问我的 Node 应用程序中的数据。我已经记录了完整的 req 对象,但我的数据不在任何地方。

我觉得这与 Ember 使用 PATCH 动词这一事实有关,而我希望它使用 PUT 或 POST。

非常感谢任何帮助。

最佳答案

免责声明:如果没有看到代码,很难给您一个明确的答案。

JSON API 规范定义,更新资源是使用 PATCH 动词完成的。 ( http://jsonapi.org/format/#crud-updating )

如果您选择使用此适配器,则必须在您的 Express 应用中定义适当的路由。没有看到它,我建议使用相同的回调定义 PUT 和 PATCH 的路由,你会没事的。

例如:

router.put('/:id', controller.update);
router.patch('/:id', controller.update);

目前在适配器中覆盖 HTTP 谓词并不容易(Ember Data 2.4)。一个可能的方法是覆盖适配器的 updateRecord 方法。 ( https://github.com/emberjs/data/blob/v2.4.0/addon/adapters/json-api.js#L115-L133 )

关于javascript - Ember.js 模型保存不向服务器发送数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36387355/

相关文章:

javascript - 三个 JS : Orbit Controls and camera. up.set

c# - 将 JavaScript 数组传递给 IEnumerable 会给出空值

javascript - 使用 jQuery 的 .html() 函数转义内容以放置

javascript - 使用Browserify编译NPM包

javascript - sw-precache-webpack-plugin webpack service worker 默认模板

jquery - 如何将项目 Expressjs 与 jQuery-File-Upload 集成?

javascript - CRUD 策略,每个 CRUD 操作使用一次还是两次调用?

node.js - 如何存储和检索对话流的聊天记录?

node.js - 从 node.js 向 bash 发送和执行命令

http - go 中的路由处理