Ada*_*ski 6 javascript node.js ember.js loopbackjs
我正在尝试使用Loopback来获取与Ember交谈的API.
Ember要求JSON包含在"密钥"中,例如帐户:
{ account:
{ domain: 'domain.com',
subdomain: 'test',
title: 'test.domain.com',
id: 1
} }
Run Code Online (Sandbox Code Playgroud)
我已经在Google小组上找到了一些关于如何改变响应的建议,以便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();
});
};
Run Code Online (Sandbox Code Playgroud)
我看到响应是应该在控制台中的..但是localhost:3000/api/accounts中的JSON输出不显示更改的JSON对象.
在Loopback中更改JSON响应/请求的正确方法是什么?
理想情况下,它可以应用于所有模型.
您可以使用 with 使 Ember-data 与 Strongloop 的环回 api 兼容,DS.RESTAdapter如下DS.JSONSerializer所示:
// app/adapters/application.js
import DS from 'ember-data';
export default DS.RESTAdapter.extend({
host: 'http://loopback-api-host',
namespace: 'api',
defaultSerializer: 'JSONSerializer'
});
Run Code Online (Sandbox Code Playgroud)
http://emberjs.com/api/data/classes/DS.JSONSerializer.html
“在 Ember Data 中,与后端数据存储通信的逻辑位于 Adapter 中。Ember Data 的 Adapter 对 REST API 的外观有一些内置假设。如果您的后端约定与这些假设不同,Ember Data 可以轻松地通过更换或扩展默认适配器来更改其功能。”
http://guides.emberjs.com/v2.0.0/models/customizing-adapters/
类似问题: Strongloop 与 Emberjs
| 归档时间: |
|
| 查看次数: |
1105 次 |
| 最近记录: |