Копирование объектов с использованием DigitalOcean Spaces - PullRequest
0 голосов
/ 09 апреля 2019

В настоящее время я использую Digital Ocean с Amazon S3 SDK и могу загружать и удалять файлы программным способом.Однако копирование объектов представляется большой проблемой.

Во-первых, мой список сегментов всегда возвращает 0 результатов:

s3Client.listBuckets() // 0 results

Во-вторых, у меня есть объект с именем company__1/tempom81p2epoksju921ntk/CLASSIFICATION/127a58b2_dd14_4851_88f2_99d28f849191.jpeg в пространстве с именем my_do_space.Если я хочу скопировать этот объект в том же месте, как будет выглядеть правильный код?Я пробовал следующее:

s3Client.copyObject("my_do_space","company__1/tempom81p2epoksju921ntk/CLASSIFICATION/127a58b2_dd14_4851_88f2_99d28f849191.jpeg", "my_do_space", "company__1/somenewthing/CLASSIFICATION/test.jpeg");

Я также пробовал все возможные комбинации, и ни одна из них, похоже, не работает

1 Ответ

1 голос
/ 10 апреля 2019

оказывается, что мои учетные данные были неправильными, я использовал следующее:

digitalocean:
  spaces:
    endpoint: https://my_bucket.sfo2.digitaloceanspaces.com

И по какой-то причине я смог правильно загрузить / удалить файлы с него

Когда я изменил свои учетные данные на:

digitalocean:
  spaces:
    endpoint: https://sfo2.digitaloceanspaces.com

и их указание корзины через код:

s3Client.putObject(new PutObjectRequest("my_bucket", key, fileToUpload)
            .withCannedAcl(CannedAccessControlList.PublicRead));

Мне удалось правильно скопировать его, используя код в моих вопросах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...