Загрузить файл со специальным символом ":" из AWS - PullRequest
0 голосов
/ 20 февраля 2019

У меня проблемы с загрузкой вышеуказанного файла из aws.Я пытался загрузить этот файл с помощью CouldBerry Explore и Java, но мне это не удалось.В документе aws говорится, что мне нужна особая обработка. (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html) Итак, не могли бы вы рассказать, как обрабатывать загрузку этого файла с помощью ":"?

Ниже приведена информация о моем файле.

Имя файла: "E: \ Home \ temp \ test-1_20180101.csv"

Ключ объекта: "testaws / data / E: \ Home \ temp \ test-1_20180101.csv"

Когда я пытался загрузить файл с помощью CouldBerry Explore, сообщение ettro было следующим: «Рассчитанная нами подпись запроса не соответствует предоставленной вами подписи. Проверьте ваш ключ и метод подписи.»

И я покажу вамJava-коды для загрузки файла

import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.model.ListObjectsRequest;
import com.amazonaws.services.s3.model.ObjectListing;
import com.amazonaws.services.s3.model.S3ObjectSummary;

...
String prefix ="testaws/data/"
ListObjectsRequest request = new ListObjectsRequest().withBucketName(MY_BUCKET_NAME).withPrefix(prefix).withDelimiter("/");
ObjectListing list = s3.listObjects(request);
List<S3ObjectSummary> summary = list.getObjectSummaries();
...

Сводка ничего не содержит, поэтому, похоже, не удается загрузить файл. (Очевидно, я успешно загружаю файл без ":")

1 Ответ

0 голосов
/ 20 февраля 2019

Я протестировал это с помощью интерфейса командной строки AWS (CLI) на Mac и успешно загрузил / загрузил файл с таким именем.Однако мне пришлось процитировать имя , чтобы обратные слеши не интерпретировались как escape-символы:

aws s3 cp "s3://my-bucket/testaws/data/E:\Home\temp\test-1_20180101.csv" test.csv
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...