使环回API Ember.js兼容

我正在尝试使用Loopback API来与Ember交谈。

Ember要求将JSON包含在“密钥”中,例如对于一个帐户:

{ account: { domain: 'domain.com', subdomain: 'test', title: 'test.domain.com', id: 1 } } 

我在Google小组上发现了一些关于如何修改响应的build议,以便Ember能够使用afterRemote钩子来接收它。

例如在我的models / account.js中:

 module.exports = function(Account) { Account.afterRemote('**', function (ctx, account, next) { if(ctx.result) { if(Array.isArray(ctx.result)) { ctx.res.body = { 'accounts': account }; } else { ctx.res.body = { 'account': account }; } } console.log(ctx.res.body); next(); }); }; 

我看到,响应是因为它应该是在控制台..但是在本地主机:3000 / api /帐户的JSON输出不显示更改的JSON对象。

在Loopback中修改JSON响应/请求的正确方法是什么?

理想情况下,可以将其应用于所有模型。

您可以使用与DS.JSONSerializer一样的DS.RESTAdapter来使Ember-data与Strongloop的loopback API兼容,如下所示:

 // app/adapters/application.js import DS from 'ember-data'; export default DS.RESTAdapter.extend({ host: 'http://loopback-api-host', namespace: 'api', defaultSerializer: 'JSONSerializer' }); 

http://emberjs.com/api/data/classes/DS.JSONSerializer.html

在Ember Data中,与后端数据存储通信的逻辑存在于Adapter中,Ember Data的Adapter对于REST API的外观有一些内置的假设,如果你的后端约定不同于这些假设,Ember Data可以很容易地通过交换或扩展默认适配器来更改其function。“

http://guides.emberjs.com/v2.0.0/models/customizing-adapters/

类似的问题: 与Emberjs Strongloop