こんにちは、ember simple auth を使用して独自の Authorizer を作成しようとしています。しかし、Ember-cli はそれを拾っているようには見えず、まだ言っているNo authorizer was configured for Ember Simple Auth - specify one if backend requests need to be authorized.
私はember-cli 0.1.1を使用しています
ここに私のイニシャライザがあります:
var CustomAuthorizer = SimpleAuth.Authorizers.Base.extend({
authorize: function(jqXHR, requestOptions){
console.log('authCCC', jqXHR, requestOptions);
}
});
export default {
name: 'authorization',
before: 'simple-auth',
initialize: function(container, application) {
container.register('authorizer:custom', CustomAuthorizer);
}
};
次に、ドキュメントによると、これを自分で行う必要がありますconfig/environment.js
ENV['simple-auth'] = {
authorizer: 'authorizer:custom'
};
ここで何が問題なのかわかりません。著者から私が得るのは、役に立たないドキュメントへのリンクだけです:/
前もって感謝します。
編集
これが私の完全なenvironment.jsです
module.exports = function(environment) {
var ENV = {
modulePrefix: 'app-client',
environment: environment,
baseURL: '/',
locationType: 'auto',
EmberENV: {
FEATURES: {
// Here you can enable experimental features on an ember canary build
// e.g. 'with-controller': true
}
},
APP: {
// Here you can pass flags/options to your application instance
// when it is created
},
contentSecurityPolicy: {
'font-src': "'self' https://fonts.gstatic.com"
}
};
ENV['simple-auth'] = {
authorizer: 'authorizer:custom'
};
if (environment === 'development') {
ENV.APP.LOG_RESOLVER = true;
ENV.APP.LOG_ACTIVE_GENERATION = true;
ENV.APP.LOG_VIEW_LOOKUPS = true;
ENV.APP.SERVER_URL = 'http://localhost:3000';
// ENV.APP.SERVER_URL = 'http://0.0.0.0:3000';
}
if (environment === 'test') {
// Testem prefers this...
ENV.baseURL = '/';
ENV.locationType = 'auto';
// keep test console output quieter
ENV.APP.LOG_ACTIVE_GENERATION = false;
ENV.APP.LOG_VIEW_LOOKUPS = false;
ENV.APP.rootElement = '#ember-testing';
}
if (environment === 'staging') {
ENV.APP.SERVER_URL = 'http://apistaging.server.io';
}
if (environment === 'production') {
ENV.APP.SERVER_URL = 'https://api.server.io';
}
return ENV;
};