从 Ember 前面到 Rails 后面的请求没有发生
Request from Ember front to Rails back is not happening
我在 ember 1.13 中实现了一个带有 Rails 后端的前端,但遇到了以下问题:
用户认证通过后,我好像无法从后台取回用户的记录。浏览器调试器甚至不显示正在发出的请求。这是代码:
// app/services/session-user.js
import Ember from 'ember';
const { inject: { service }, RSVP } = Ember;
export default Ember.Service.extend({
session: service('session'),
store: service(),
loadCurrentUser() {
currentUser: {
var userId = this.get('user_id');
if (!Ember.isEmpty(userId)) {
return this.get('store').findAll('user', userId);
}
}
}
});
有一个处理身份验证的登录控制器。但是获取数据的代码在应用程序的路由中:
// app/routes/application.js
import Ember from 'ember';
import ApplicationRouteMixin from 'ember-simple-auth/mixins/application-route-mixin';
const { service } = Ember.inject;
export default Ember.Route.extend(ApplicationRouteMixin, {
sessionUser: service('session-user'),
beforeModel() {
if (this.session.isAuthenticated) {
return this._loadCurrentUser();
}
},
sessionAuthenticated() {
this._loadCurrentUser();
},
_loadCurrentUser() {
return this.get('sessionUser').loadCurrentUser();
},
});
为了额外的措施,我正在定义会话存储:
// app/session-stores/application.js
import Adaptive from 'ember-simple-auth/session-stores/adaptive';
export default Adaptive.extend();
如果有我应该 post 的文件,请告诉我。
任何提示都将不胜感激,因为我是 ember 的新手。我花了几个小时进行研究,但运气不佳,因为在整个版本中情况似乎发生了很大变化。
查看您的服务代码。
var userId = this.get('user_id');
if (!Ember.isEmpty(userId)) {
return this.get('store').findAll('user', userId);
}
我没有看到您在设置 user_id 变量的地方提供的相关代码。因此,如果 user_id 未定义,则 if
语句将不会因为 !
而被执行。
我在 ember 1.13 中实现了一个带有 Rails 后端的前端,但遇到了以下问题:
用户认证通过后,我好像无法从后台取回用户的记录。浏览器调试器甚至不显示正在发出的请求。这是代码:
// app/services/session-user.js
import Ember from 'ember';
const { inject: { service }, RSVP } = Ember;
export default Ember.Service.extend({
session: service('session'),
store: service(),
loadCurrentUser() {
currentUser: {
var userId = this.get('user_id');
if (!Ember.isEmpty(userId)) {
return this.get('store').findAll('user', userId);
}
}
}
});
有一个处理身份验证的登录控制器。但是获取数据的代码在应用程序的路由中:
// app/routes/application.js
import Ember from 'ember';
import ApplicationRouteMixin from 'ember-simple-auth/mixins/application-route-mixin';
const { service } = Ember.inject;
export default Ember.Route.extend(ApplicationRouteMixin, {
sessionUser: service('session-user'),
beforeModel() {
if (this.session.isAuthenticated) {
return this._loadCurrentUser();
}
},
sessionAuthenticated() {
this._loadCurrentUser();
},
_loadCurrentUser() {
return this.get('sessionUser').loadCurrentUser();
},
});
为了额外的措施,我正在定义会话存储:
// app/session-stores/application.js
import Adaptive from 'ember-simple-auth/session-stores/adaptive';
export default Adaptive.extend();
如果有我应该 post 的文件,请告诉我。
任何提示都将不胜感激,因为我是 ember 的新手。我花了几个小时进行研究,但运气不佳,因为在整个版本中情况似乎发生了很大变化。
查看您的服务代码。
var userId = this.get('user_id');
if (!Ember.isEmpty(userId)) {
return this.get('store').findAll('user', userId);
}
我没有看到您在设置 user_id 变量的地方提供的相关代码。因此,如果 user_id 未定义,则 if
语句将不会因为 !
而被执行。