refreshAccessToken method
Implementation
@override
Future<DiscordToken> refreshAccessToken() async {
assert(_discordToken != null);
final options = Options(
contentType: Headers.formUrlEncodedContentType,
);
final data = <String, String>{
'client_id': clientId,
'client_secret': clientSecret,
'grant_type': 'refresh_token',
'refresh_token': _discordToken!.refreshToken,
};
final response = await dio.postUri<Map<String, dynamic>>(
DiscordClient.tokenUri,
options: options,
data: data,
);
if (response.data != null) {
_discordToken = DiscordToken.fromJson(response.data!);
return _discordToken!;
} else {
throw const DiscordApiException('Could not refresh token');
}
}