2014-12-02 38 views
0

我試圖設置一個自定義身份驗證與簡單的身份驗證。我使用Ember CLI,並根據GitHub上的Simple Auth ReadMe指出。 請注意,當您不使用Ember CLI時,身份驗證器不會自動註冊到容器,您需要在初始化程序中執行此操作。Ember CLI - 簡單的身份驗證 - 自定義身份驗證器不會自動註冊

它並沒有說明,你需要把你的身份驗證(或授權人對這個問題)在你的目錄結構,以便它由灰燼CLI自動註冊。在app/authenticators/custom.js中創建我的文件(如閱讀示例中所示)後,我預計它將在容器中註冊。看着Ember Inspector,它不在哪裏被發現。

有沒有人有這方面的見解?這些文件的位置在哪裏?

請詢問是否需要任何附加信息。

Ember: 1.7.0 
Ember Data: 1.0.0-beta.10 
Ember Simple Auth: 0.7.1 

回答

0

確保在/app/initializers/中有初始值設定項。此目錄中的初始值設定項是通過ember-cli自動設置的。

// app/initializers/authentication.js 
import CustomAuthenticator from '../authenticators/custom'; 

export default { 
    name:  'authentication', 
    before:  'simple-auth', 
    initialize: function(container, application) { 
    container.register('authenticator:custom', CustomAuthenticator); 
    } 
}; 
1

灰燼CLI的最新版本實際上應自動註冊認證 - 確保您使用的是(你可能並不如你依舊在灰燼1.7.0)。這應該解決它。

0

我收到了同樣的問題,我有灰燼1.8.1

錯誤是:在文件app /鑑定人 Uncaught ReferenceError: CustomAuthenticator is not defined /custom.js

我需要添加一個初始和修改代碼在下面的文檔中找到,它的工作原理

import Base from 'simple-auth/authenticators/base'; 

var CustomAuthenticator = Base.extend({ 
    restore: function(data) { 
    }, 
    authenticate: function(options) { 
    }, 
    invalidate: function(data) { 
    } 
}); 

export default CustomAuthenticator; 
+0

這是關於Ember CLI版本而不是Ember版本。你正在運行哪個版本的Ember CLI? – marcoow 2014-12-23 18:18:25

+0

你如何在你的cli應用程序中使用CustomAuthenticator? – SuperUberDuper 2015-06-05 07:51:34