简单 ember-cli-simple-auth 和 oauth2 项目

Simple ember-cli-simple-auth and oauth2 project

我是第 3 方身份验证的新手,无法通过 ember-cli-simple-auth 插件与 simple-auth- 向 LinkedIn 发出 API 请求oauth2。我的 environment.js 在下面,我试图将 Simple Labs 的介绍 1 和 http://ember-simple-auth.com/ember-simple-auth-api-docs.html1 中的部分拼凑在一起,特别是在环境 === 'test' 的底部。构建 CLI 项目后我没有收到任何错误,但我确实在浏览器的控制台中收到一条通知(不是警告或错误),上面写着:

No authorizer was configured for Ember Simple Auth - specify one if backend requests need to be authorized.

现在,我正试图从 LinkedIn 取回一个授权令牌,但不确定下一步是什么。如果我尝试在我的登录控制器上触发 "authenticate" 操作(扩展 loginControllerMixin),我会在控制台中收到一条错误消息:

Uncaught Error: Assertion Failed: No authenticator for factory "authenticator:simple-auth-oauth2" could be found

我错过了什么部分?


Environment.js:

// config/environment.js
/* jshint node: true */

module.exports = function(environment) {
  var ENV = {
    modulePrefix: 'seminars-me',
    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
}


 };

  if (environment === 'development') {
    // ENV.APP.LOG_RESOLVER = true;
    // ENV.APP.LOG_ACTIVE_GENERATION = true;
    // ENV.APP.LOG_TRANSITIONS = true;
    // ENV.APP.LOG_TRANSITIONS_INTERNAL = true;
    // ENV.APP.LOG_VIEW_LOOKUPS = true;
  }

  if (environment === 'test') {
    // Testem prefers this...
    ENV.baseURL = '/';
    ENV.locationType = 'none';

// keep test console output quieter
ENV.APP.LOG_ACTIVE_GENERATION = false;
ENV.APP.LOG_VIEW_LOOKUPS = false;

ENV.APP.rootElement = '#ember-testing';

ENV['simple-auth-oauth2'] = {
  serverTokenEndpoint: 'https://www.linkedin.com/uas/oauth2/authorization?response_type=code&client_id=757ll7ci1xd93u&scope=profile'
};
    ENV['simple-auth'] = {
      authorizer: 'simple-auth-authorizer:oauth2-bearer',
      crossOriginWhitelist: ['https://www.linkedin.com'],
      store: 'simple-auth-session-store:local-storage'
    };
  }

  if (environment === 'production') {

  }

  return ENV;
};

当您使用 authenticator:simple-auth-oauth2 时,身份验证器实际上已注册为 simple-auth-authenticator:oauth2-password-grant