How configure SystemJS with Auth0?

2019-07-11 01:25发布

问题:

I tried configure SystemJS for Auth0 (angular2-jwt) and Angular 2.0.0-beta.6 but always I get the following error:

GET http://localhost:3000/angular2/http 404 (Not Found)fetchTextFromURL @ system.src.js:1068(anonymous function) @ system.src.js:1649lib$es6$promise$$internal$$initializePromise @ angular2-polyfills.js:515lib$es6$promise$promise$$Promise @ angular2-polyfills.js:806(anonymous function) @ system.src.js:1648(anonymous function) @ system.src.js:2669(anonymous function) @ system.src.js:3233(anonymous function) @ system.src.js:3500(anonymous function) @ system.src.js:4116(anonymous function) @ system.src.js:4324(anonymous function) @ system.src.js:4564(anonymous function) @ system.src.js:326Zone.run @ angular2-polyfills.js:1243zoneBoundFn @ angular2-polyfills.js:1220lib$es6$promise$$internal$$tryCatch @ angular2-polyfills.js:468lib$es6$promise$$internal$$invokeCallback @ angular2-polyfills.js:480lib$es6$promise$$internal$$publish @ angular2-polyfills.js:451(anonymous function) @ angular2-polyfills.js:123Zone.run @ angular2-polyfills.js:1243zoneBoundFn @ angular2-polyfills.js:1220lib$es6$promise$asap$$flush @ angular2-polyfills.js:262
angular2-polyfills.js:1243 Error: XHR error (404 Not Found) loading http://localhost:3000/angular2/http(…)

SystemJS:

<script>
    //configure system loader
    System.config({
      packages: {
        app: {
            format: 'register',
            defaultExtension: 'js'
        },
        'angular2-jwt': {
            defaultExtension: 'js'
        }
      },
      map: {
        'angular2-jwt': 'node_modules/angular2-jwt/angular2-jwt.js'
      }
    });
  </script>

In addition, I have read the SystemJS documentation but I am not sure about how to fix this issue.

回答1:

It seems you are not importing angular2/http script along the others:

<script src="https://code.angularjs.org/2.0.0-beta.6/angular2.dev.js"></script>
<script src="https://code.angularjs.org/2.0.0-beta.6/http.js"></script> <!-- add this -->

Don't forget to bootstrap it, or else you'll get:

EXCEPTION: No provider for Http! (AppComponent -> Http)
...
Error: DI Exception ...

Bootstrap it:

import {bootstrap}    from 'angular2/platform/browser'
import {HTTP_PROVIDERS} from 'angular2/http';
import {AppComponent} from './app.component'

bootstrap(AppComponent, [HTTP_PROVIDERS]);