C# Digital Ocean Spaces Ошибка при выполнении запроса с запрещенным кодом ошибки и запрещенным кодом состояния Http. ДопC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 C# Digital Ocean Spaces Ошибка при выполнении запроса с запрещенным кодом ошибки и запрещенным кодом состояния Http. Доп

Сообщение Anonymous »

Я использую Digital Ocean Spaces, но не могу правильно загрузить изображения из приложения Dotnet Web Api с помощью AWS.SDK. Я получаю сообщение об ошибке:

Ошибка выполнения запроса с запрещенным кодом ошибки и запрещенным кодом состояния HTTP. Никакой дополнительной информации об ошибках не было возвращено.

Это мой код, который также пробовал с кодом с комментариями с той же ошибкой:

Код: Выделить всё

        public async Task AddUserImage(ImageCreateDTO imageCreateDto)
{
try
{
var credentials = new BasicAWSCredentials(_storageOptions.Value.AccessKey, _storageOptions.Value.SecretKey);

AmazonS3Config config = new()
{
ServiceURL = _storageOptions.Value.ServiceUrl,
};

AmazonS3Client s3Client = new(
_storageOptions.Value.AccessKey,
_storageOptions.Value.SecretKey,
config
);
using var stream = imageCreateDto.File.OpenReadStream();

TransferUtility fileTransferUtility = new(s3Client);

TransferUtilityUploadRequest fileTransferUtilityRequest = new()
{
BucketName = $"joinorcreate/{_storageOptions.Value.UserImages}",
StorageClass = S3StorageClass.Standard,
PartSize = imageCreateDto.File.Length,
Key = imageCreateDto.FileName,
CannedACL = S3CannedACL.PublicRead,
InputStream = stream
};

// Add the x-amz-acl header
fileTransferUtilityRequest.Headers["x-amz-acl"] = "public-read";

await fileTransferUtility.UploadAsync(fileTransferUtilityRequest);

// PutObjectRequest request = new()
// {
//     BucketName = $"joinorcreate/{_storageOptions.Value.UserImages}",
//     Key = imageCreateDto.FileName,
//     InputStream = stream,
//     ContentType = imageCreateDto.File.ContentType,
//     CannedACL = S3CannedACL.PublicRead,
//     StorageClass = S3StorageClass.Standard,

// };

// await s3Client.PutObjectAsync(request);

return true;
}
catch (AmazonS3Exception e)
{
Console.WriteLine(e.Message);
return false;
}
catch (Exception e)
{
Console.WriteLine(e.Message);
return false;
}
}
Пожалуйста, вы можете мне помочь? Кроме того, я не хочу, чтобы изображения имели конфиденциальное, но общедоступное разрешение при добавлении по умолчанию, когда приведенный выше код работает?
Я попробовал все, рассмотрел другие проблемы, такие как:
Я попробовал все, рассмотрел другие проблемы, такие как:
p>
https://www.digitalocean.com/community/ ... t-net-core
Я ожидал, что изображение будет успешно загружено!

Подробнее здесь: https://stackoverflow.com/questions/784 ... bidden-and
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»