Angular2 erhält URL-Abfrageparameter

Ich bin einrichten einer Facebook-Registrierung für meine Angular2 web-app.
Sobald die Bewerbung akzeptiert wurde über Facebook (nach der Weiterleitung auf die Facebook-Autorisierung Seite), Umleitung auf meine webapp mit den token und den code als url-params:

http://localhost:55976/?#access_token=MY_ACCESS_TOKEN&code=MY_CODE

Aber sobald die Seite geladen wird, der Parameter entfernt werden. Die url werden:

http://localhost:55976/

Wie kann ich das extrahieren der Parameter (access_token und-code), bevor Sie entfernt werden?
Meine routing-Konfiguration enthält:

{ path: 'login', component: LoginComponent },
{ path: 'login/:access_token/:code', component: LoginComponent },

EDIT:

Hier ist, wie ich die Umleitung zu facebook in meinem login.Komponente:
html:

<a class="btn btn-social btn-facebook socialaccount_provider facebook" title="Facebook" href="#" (click)="login_facebook()">
    <span class="fa fa-facebook"></span> <span style="padding-left:25px">Sign in with Facebook</span>
</a>

Typoskript:

login_facebook() {
    let url = 'https://www.facebook.com/dialog/oauth?'+
        'client_id=my_client_id' +
        '&redirect_uri=' + encodeURIComponent('http://localhost:55976/#/login/') +
        '&response_type=code%20token';
    console.log(url);
    window.location.href = url;
}

Die facebook-api Umleitung zu http://localhost:55976/#/login/das ist, wo ich versuche mir das access_token und code-Parameter.

EDIT 2:

Wenn ich die abnehme, der scharf in die redirect-url, facebook Umleitung mich zu den guten-URL, aber ohne die scharfen, kantigen beheben können, die url.

Vor dem entfernen '#':

redirect_uri: http://localhost:55976/#/login/
facebook return: http://localhost:55976/?#access_token=MY_ACCESS_TOKEN&code=MY_CODE

Nach dem entfernen '#':

redirect_uri: http://localhost:55976/login/
facebook return: http://localhost:55976/login/?#access_token=MY_ACCESS_TOKEN&code=MY_CODE

Bedeutet das, dass das problem kommt aus der sharp. Aber ohne die scharfen, kantigen gibt HTTP-Fehler 404.0 - Nicht Gefunden.

InformationsquelleAutor der Frage Ben | 2016-09-23

Schreibe einen Kommentar