Bug 1597933 - clean up OAuth2 code: remove responseType which is always "code". r=Fallen

Response type "token" is part of the OAuth 2.0 Implicit Flow which is not used in Thunderbird, but also discouraged by the OAuth Working Group: https://developer.okta.com/blog/2019/05/01/is-the-oauth-implicit-flow-dead
This commit is contained in:
Magnus Melin 2019-11-21 10:39:22 +02:00
Родитель 75816dc8f4
Коммит 6c330b5815
1 изменённых файлов: 4 добавлений и 6 удалений

Просмотреть файл

@ -3,7 +3,8 @@
* You can obtain one at http://mozilla.org/MPL/2.0/. */
/**
* Provides OAuth 2.0 authentication
* Provides OAuth 2.0 authentication.
* @see RFC 6749
*/
var EXPORTED_SYMBOLS = ["OAuth2"];
@ -41,7 +42,6 @@ OAuth2.CODE_AUTHORIZATION = "authorization_code";
OAuth2.CODE_REFRESH = "refresh_token";
OAuth2.prototype = {
responseType: "code",
consumerKey: null,
consumerSecret: null,
completionURI: "http://localhost",
@ -77,7 +77,7 @@ OAuth2.prototype = {
requestAuthorization() {
let params = [
["response_type", this.responseType],
["response_type", "code"],
["client_id", this.consumerKey],
["redirect_uri", this.completionURI],
];
@ -186,10 +186,8 @@ OAuth2.prototype = {
onAuthorizationReceived(aData) {
this.log.info("authorization received" + aData);
let results = parseURLData(aData);
if (this.responseType == "code" && results.code) {
if (results.code) {
this.requestAccessToken(results.code, OAuth2.CODE_AUTHORIZATION);
} else if (this.responseType == "token") {
this.onAccessTokenReceived(JSON.stringify(results));
} else {
this.onAuthorizationFailed(null, aData);
}