Javascript Ember获取POST请求的JSON响应
我有一个RubyonRails API和一个位于ember的前端。 我正在尝试将来自ember的记录添加到我的api中。我可以在api日志中看到我的请求执行得很好,并返回json。但在我的ember应用程序中,我尝试打印JSON响应并访问这些信息 以下是我的控制器中的代码,用于从我的余烬应用程序创建记录:Javascript Ember获取POST请求的JSON响应,javascript,ruby-on-rails,json,ember.js,ember-data,Javascript,Ruby On Rails,Json,Ember.js,Ember Data,我有一个RubyonRails API和一个位于ember的前端。 我正在尝试将来自ember的记录添加到我的api中。我可以在api日志中看到我的请求执行得很好,并返回json。但在我的ember应用程序中,我尝试打印JSON响应并访问这些信息 以下是我的控制器中的代码,用于从我的余烬应用程序创建记录: export default Ember.Controller.extend({ actions: { submit: function(){ var result
export default Ember.Controller.extend({
actions: {
submit: function(){
var result = this.store.createRecord("session", {email: this.get('email'), password: this.get('password')});
var onSuccess = function(post){
console.log("kikou");
console.log(post);
};
var onFail = function(post){
console.log("kikou");
console.log(post);
};
result.save().then(onSuccess, onFail);
}
}
返回的JSON为:
{"user":{"email":"gui@hotmail.com","authentication_token":"4vLAkiM1Ro5qN2HeNogM","id":1}}
我如何访问电子邮件、身份验证令牌等。。。?
也许我做错了什么,或者这不是在rails api上创建记录的正确方法
我不想在我的控制器中生成任何ajax代码,否则我看不到使用Ember的任何兴趣
感谢您的帮助,您应该定义一个型号
用户
,并为您的余烬应用程序使用:
app/models/user.js
import DS from 'ember-data';
export default DS.Model.extend({
email: DS.attr('string'),
authentication_token: DS.attr('string')
});
然后,在onSuccess
功能中,您可以访问如下数据:
var onSuccess = function(post){
console.log(post.get('id'));
console.log(post.get('email'));
console.log(post.get('authentication_token'));
};
我完全按照你说的做了,但是当我制作
post.get('id')
时,它会打印null
,而对于post.get('authentication\u token')
它会打印未定义的
,但是电子邮件会打印出来。你能设置一个jsbin或类似的文件来重现这个问题吗?