【问题标题】:How can I use ember-simple-auth to set header in custom url api with ember data?如何使用 ember-simple-auth 在带有 ember 数据的自定义 url api 中设置标题?
【发布时间】:2016-04-01 07:57:39
【问题描述】:

我的 ember 数据模型:

import DS from 'ember-data';
import config from './../config/environment';

export default DS.Model.extend({
  ...

  useRepairPackage(repairPackageId) {
    this.get('session').authorize('authorizer:digest', (headerName, headerValue)=> { 
      const headers = {}; 
      headers[headerName] = headerValue; 
      Ember.$.ajax({url: `${config.host}/${config.namespace}/quotations/${this.get('id')}/use_repair_package.json`, type: "PATCH", headers: headers}).then((result)=> { 
        return this.reload();
      }); 
    });
  }
});

我检查了ember-simple-auth 文档,我发现这种方法可以在标题中添加会话。但它在model 中不起作用,如何在此操作中添加视野?谢谢。

【问题讨论】:

  • 这是一个糟糕的设计。你不应该在模型中做诸如授权之类的事情。操作应该在路由/控制器上。
  • @GennadyDogaev 好的。我认为它必须在路线中设置。

标签: ember.js ember-simple-auth


【解决方案1】:

您可以将会话服务公开给模型,然后访问它。

导出默认 DS.Model.extend({ 会话:Ember.inject.service('session'),

现在访问下面的会话以发送会话数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-30
    • 1970-01-01
    • 1970-01-01
    • 2016-02-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多