Beispiel #1
0
        public async Task <HttpFragileOperationResult <GetFileResult> > GetFileAsync(string identifier)
        {
            var fileVaultUrl      = _configurationService.ConfigurationSettings.FncFileVaultUrl + $"api/file/{identifier}/false";
            var generateJwtResult = await _jwtUtility.GenerateJwtAsync().ConfigureAwait(false);

            if (generateJwtResult.Status != Status.Success)
            {
                return(generateJwtResult.ToHttpFragileOperationResult <GetFileResult>($"{generateJwtResult.StatusCode} while getting file with identifier {identifier}."));
            }

            var result = await _httpUtility.HttpGetAsync <FileVaultFile>(fileVaultUrl, new[] { new KeyValuePair <string, string>("Authorization", $"Bearer {generateJwtResult.Result.Jwt}"), }).ConfigureAwait(false);

            if (result.Status != Status.Success)
            {
                return(result.ToHttpFragileOperationResult <GetFileResult>($"{result.StatusCode} while getting file with identifier {identifier}."));
            }
            return(HttpFragileOperationResult <GetFileResult> .CreateSuccessfulResult(new GetFileResult(result.Result.FileAsByteArray, result.Result.Filename), result.StatusCode, result.ResponseStringContent));
        }