checkUrl method
This will check if the current URL has authentication tokens.
Implementation
bool checkUrl(Uri url) {
try {
/*
* If dropbox uses fragments instead of query parameters then swap convert
* them to parameters so it is easier to parse. This also allows us to use
* parameters if they don't use fragments.
*/
if (url.hasFragment && !url.hasQuery) {
url = url.replace(query: url.fragment);
}
if (url.host != redirectUri.host) return false;
if (url.query.isEmpty) return false;
if (!url.queryParameters.containsKey(authCodeKey)) return false;
var code = url.queryParameters[authCodeKey];
if (code?.isEmpty ?? true) return false;
token = code;
tokenType = url.queryParameters["token_type"] == 'bearer'
? 'Bearer'
: url.queryParameters["token_type"];
uid = url.queryParameters["uid"];
foundAuthCode(code);
return true;
} catch (exception) {
print(exception);
return false;
}
}