С помощью AWSiOS SDK вы выполняете запрос HEAD для объекта S3? - PullRequest
2 голосов
/ 16 декабря 2011

Я собираюсь использовать SDK (не могу использовать ASI) для выполнения HEAD-запросов к объектам, прежде чем загружать их для определения размера.Есть ли предоставленный способ сделать это, я пропускаю, или я вынужден создать свой собственный S3Request, установив для свойства httpMethod значение «HEAD» и передав сконструированный S3Request в метод invoke: AmazonS3Client?

Создание запроса само по себе становится немного рискованным, так как я использую федеративных пользователей, поэтому я хотел убедиться, что я не дублирую то, что пропустил.

Ответы [ 2 ]

3 голосов
/ 10 октября 2012

Я поддерживаю AWS SDK для iOS.Вы также можете использовать S3GetObjectMetadataRequest, чтобы сделать то же самое.

S3GetObjectMetadataRequest *request = 
[[S3GetObjectMetadataRequest alloc] initWithKey:FILE_NAME withBucket:BUCKET_NAME];
S3GetObjectMetadataResponse *response = [s3 getObjectMetadata:request];
int64_t fileSize = response.contentLength;
0 голосов
/ 18 декабря 2011

Оказалось довольно прямым, но все еще задаюсь вопросом, есть ли более приемлемый способ сделать ГОЛОВУ.

S3GetObjectRequest *headRequest = [[[S3GetObjectRequest alloc] initWithKey:keyname withBucket: [bucketname]] autorelease];
headRequest.httpMethod = @"HEAD";

S3Response *headResponse = [[S3Response alloc] init];
headResponse = [self.awsConnection invoke:headRequest];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...