2016-10-27 1 views
0

Mein Client verwendet den impliziten Fluss von OAuth2. Nach erfolgreichem Anmelden meldet das Identityserver3-Token für den Zugriff zurück, läuft ab, scopes und so weiter. Aber es gab kein Refresh-Token zurück. Ich habe den Offline_Access-Bereich in Request-URL, AllowedScopes von Client und IdentityServerServiceFactory festgelegt, es funktioniert nicht. Wenn ich jedoch in den Autorisierungscode-Ablauf übergehe, wird der Identity-Server 3 das Aktualisierungstoken zurückgeben.Warum hat Identityserver3 das Refresh-Token nicht zurückgegeben?

ist mein Code wie folgt:

$("#btn").click(function() { 
    var authorizationUrl = 'http://localhost:44300/core/connect/authorize'; 
    var client_id = 'MyMobileApp'; 
    var redirect_uri = 'http://localhost:44300/JsImplicitFlowDemo.html'; 
    var response_type = "token"; 
    var scope = "offline_access"; 
    var state = Date.now() + "" + Math.random(); 
    localStorage["state"] = state; 

    var url = authorizationUrl + "?" + 
      "client_id=" + encodeURI(client_id) + "&" + 
      "redirect_uri=" + encodeURI(redirect_uri) + "&" + 
      "response_type=" + encodeURI(response_type) + "&" + 
      "scope=" + encodeURI(scope) + "&" + 
      "state=" + encodeURI(state); 

      window.location = url; 
}); 

Könnten Sie mir bitte helfen, danke!

Antwort

0

Ich habe gerade die implizite Flussspezifikation von OAuth2 gelesen. Der implizite Berechtigungstyp wird verwendet, um Zugriffstoken zu erhalten (die Ausgabe von Aktualisierungstoken wird nicht unterstützt).

Verwandte Themen