2

我正在構建一個Ember-CLI應用程序。我使用ember-cli-simple-auth-devise。我已成功從後端進行身份驗證並獲得API令牌。爲了發送該令牌在每個請求頭這裏http://emberjs.com/api/data/classes/DS.RESTAdapter.html#toc_headers-customization如何從DS.RESTAdapter訪問會話?

import DS from "ember-data"; 

export default DS.RESTAdapter.extend({ 
    host: "http://localhost:3000", 
    namespace: "api/v1", 
    headers: function() { 
    return {"X-Access-Token": this.get("session.user_token")}; 
    }.property("session.user_token") 
}); 

描述但這不工作我想下面的代碼。我檢查了

this.get("session.user_token") 

其中結果未定義。所以會話不能在DS.RESTAdapter中訪問。如何讓會話助手可用於DS.RESTAdapter?

+0

我有同樣的問題,但我沒有使用設計。有沒有人找到這個解決方案? – BLuEGoD 2015-06-07 19:12:09

回答

1

你根本不需要那樣做。只需配置Devise authorizer即可將令牌頭自動注入每個請求中:

//config/environment.js 
ENV['simple-auth'] = { 
    authorizer: 'simple-auth-authorizer:devise' 
} 
+0

如果stackoverflow允許,我會給你1000票。謝謝。 – 2014-11-14 15:59:12