generateAccessOrRefreshToken method
Future<AccessOrRefreshTokenResponseDto>
generateAccessOrRefreshToken(
- AccessOrRefreshTokenRequestDto accessAndRefreshTokenRequestDto
Implementation
Future<AccessOrRefreshTokenResponseDto> generateAccessOrRefreshToken(
AccessOrRefreshTokenRequestDto accessAndRefreshTokenRequestDto,
) async {
final String url = '$channel/oauth/v2/token';
// need to remove null values from the request
final responseDto = accessAndRefreshTokenRequestDto.toJson();
responseDto.removeWhere((key, value) => value == null);
final response = await http.post(
Uri.parse(url).replace(
queryParameters: responseDto,
),
);
if (!response.statusCode.isSuccessful) {
throw MdmEngineException(
method: response.request?.method,
url: url,
statusCode: response.statusCode,
error: response.body,
);
}
return AccessOrRefreshTokenResponseDto.fromJson(
json.decode(response.body) as Map<String, dynamic>,
);
}