Когда я загружаю изображение в производство не работает - PullRequest
0 голосов
/ 16 мая 2019

Когда я использую этот код для загрузки файла (изображения) в мое хранилище S3, он отлично работает с использованием localhost; однако, когда я публикую свой код, он как-то портит файлы и показывает только черный экран. Мне нужно отправить или изменить что-то в корзине или в моем коде?

public static async Task<UploadPhotoModel> UploadPhoto(IFormFile file,string bucket)
  {
    // connecting to the client
    var client = new AmazonS3Client(accessKey, accessSecret, Amazon.RegionEndpoint.CACentral1);

    // get the file and convert it to the byte[]
    byte[] fileBytes = new Byte[file.Length];
    file.OpenReadStream().Read(fileBytes, 0, int.Parse(file.Length.ToString()));


     var fileName = Guid.NewGuid().ToString() + file.FileName;
     PutObjectResponse response = null;
            using (var stream = new MemoryStream(fileBytes))
            {

                var request = new PutObjectRequest
                {
                    BucketName = bucket,
                    Key = fileName,
                    InputStream = stream,
                    ContentType = file.ContentType,
                    CannedACL = S3CannedACL.PublicRead,               
                };
                try
                {
                    response = await client.PutObjectAsync(request);
                }
                catch (Exception  ec)
                {

                    Debug.Write(ec);
                }
            };

            if (response.HttpStatusCode == System.Net.HttpStatusCode.OK)
            {
                return new UploadPhotoModel
                {
                    Success = true,
                    FileName = fileName,
                    FileURL = "https://s3.ca-central-1.amazonaws.com/" + bucket + '/' + fileName,                 
                };
            }
            else
            {
                // this model is up to you, in my case I have to use it following;
                return new UploadPhotoModel
                {
                    Success = false
                };
            }
        }
...