diff --git a/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java b/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java index 35777a4..e80236a 100644 --- a/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java +++ b/android/src/main/java/io/fullstack/oauth/OAuthManagerModule.java @@ -6,8 +6,6 @@ import android.support.annotation.Nullable; import android.util.Log; -import com.google.gson.Gson; - import com.facebook.react.bridge.Arguments; import com.facebook.react.bridge.Callback; import com.facebook.react.bridge.ReactApplicationContext; @@ -400,18 +398,18 @@ private WritableMap accessTokenResponse( ) { WritableMap resp = Arguments.createMap(); WritableMap response = Arguments.createMap(); - Map accessTokenMap = new Gson().fromJson(accessToken.getRawResponse(), Map.class); Log.d(TAG, "Credential raw response: " + accessToken.getRawResponse()); resp.putString("status", "ok"); resp.putBoolean("authorized", true); resp.putString("provider", providerName); - String uuid = (String) accessTokenMap.get("user_id"); + + String uuid = accessToken.getParameter("user_id"); response.putString("uuid", uuid); String oauthTokenSecret = (String) accessTokenMap.get("oauth_token_secret"); - String tokenType = (String) accessTokenMap.get("token_type"); + String tokenType = (String) accessToken.getParameter("token_type"); if (tokenType == null) { tokenType = "Bearer"; } @@ -422,7 +420,6 @@ private WritableMap accessTokenResponse( credentials.putString("access_token", accessToken.getToken()); credentials.putString("access_token_secret", oauthTokenSecret); credentials.putString("type", tokenType); - // credentials.putString("scope", accessToken.getScope()); credentials.putString("consumerKey", consumerKey); response.putMap("credentials", credentials); @@ -440,18 +437,13 @@ private WritableMap accessTokenResponse( ) { WritableMap resp = Arguments.createMap(); WritableMap response = Arguments.createMap(); - Map accessTokenMap = new Gson().fromJson(accessToken.getRawResponse(), Map.class); resp.putString("status", "ok"); resp.putBoolean("authorized", true); resp.putString("provider", providerName); - try { - String uuid = (String) accessTokenMap.get("user_id"); - response.putString("uuid", uuid); - } catch (Exception ex) { - Log.e(TAG, "Exception while getting the access token"); - ex.printStackTrace(); - } + + String uuid = accessToken.getParameter("user_id"); + response.putString("uuid", uuid); WritableMap credentials = Arguments.createMap(); Log.d(TAG, "Credential raw response: " + accessToken.getRawResponse()); @@ -459,7 +451,7 @@ private WritableMap accessTokenResponse( credentials.putString("accessToken", accessToken.getAccessToken()); String authHeader; - String tokenType = (String) accessTokenMap.get("token_type"); + String tokenType = accessToken.getTokenType(); if (tokenType == null) { tokenType = "Bearer"; } @@ -470,7 +462,7 @@ private WritableMap accessTokenResponse( } String clientID = (String) cfg.get("client_id"); - String idToken = (String) accessTokenMap.get("id_token"); + String idToken = accessToken.getParameter("id_token"); authHeader = tokenType + " " + accessToken.getAccessToken(); credentials.putString("authorizationHeader", authHeader); diff --git a/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java b/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java index d91b4b5..bac69ab 100644 --- a/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java +++ b/android/src/main/java/io/fullstack/oauth/OAuthManagerProviders.java @@ -264,7 +264,7 @@ private static ServiceBuilder _oauth2ServiceBuilder( String scopes = ""; if (cfg.containsKey("scopes")) { scopes = (String) cfg.get("scopes"); - String scopeStr = OAuthManagerProviders.getScopeString(scopes, ","); + String scopeStr = OAuthManagerProviders.getScopeString(scopes, " "); builder.scope(scopeStr); } @@ -278,7 +278,7 @@ private static ServiceBuilder _oauth2ServiceBuilder( scopeStr = OAuthManagerProviders.getScopeString(scopes, ","); else scopeStr = scopes; - + builder.scope(scopeStr); } @@ -296,7 +296,7 @@ private static String getScopeString( final String scopes, final String joinBy ) { - List array = Arrays.asList(scopes.replaceAll("\\s", "").split("[ ,]+")); + List array = Arrays.asList(scopes.replaceAll("\\s", "").split(",")); Log.d(TAG, "array: " + array + " (" + array.size() + ") from " + scopes); return TextUtils.join(joinBy, array); } diff --git a/ios/OAuthManager/OAuth2Client.m b/ios/OAuthManager/OAuth2Client.m index 092a255..3e3f84e 100644 --- a/ios/OAuthManager/OAuth2Client.m +++ b/ios/OAuthManager/OAuth2Client.m @@ -95,7 +95,7 @@ - (DCTOAuth2Account *) getAccount:(NSString *)providerName NSString *scopeStr = [cfg valueForKey:@"scopes"]; // NSArray *scopes = [scopeStr componentsSeparatedByString:@","]; - NSString *sep = @", "; + NSString *sep = @" "; NSCharacterSet *set = [NSCharacterSet characterSetWithCharactersInString:sep]; NSArray *scopes = [scopeStr componentsSeparatedByCharactersInSet:set];