public async Task<ResultDto<InterpretApiFeeds>> AcademicInterpretApiRequestAsync(
AcademicParameters academicParameters)
{
var resultDto = new ResultDto<InterpretApiFeeds>();
try
{
var client = new HttpClient();
//request header
client.DefaultRequestHeaders.Add(Constants.SubscriptionTitle, academicParameters.SubscriptionKey);
var queryString =
$"query={academicParameters.Query}&offset={academicParameters.Offset}&count={academicParameters.Count}&model={academicParameters.Model}&complete={academicParameters.Complete}&timeout={academicParameters.Timeout}";
var url = Constants.AcademicInterpretApi + queryString;
var jsonResult = await client.GetStringAsync(url);
var feed = JsonConvert.DeserializeObject<InterpretApiFeeds>(jsonResult);
resultDto.Result = feed;
resultDto.ErrorMessage = feed.error?.message;
resultDto.StatusCode = feed.error?.code;
resultDto.Success = feed.error == null;
}
catch (Exception ex)
{
resultDto.ErrorMessage = ex.Message;
resultDto.Exception = ex;
Debug.WriteLine($"{ex}");
}
return resultDto;
}