AWS S3 php api: как получить url после загрузки файла?
я использовал AWS sdk (https://github.com/aws/aws-sdk-php).
код
$result = $client->putObject(array(
'Bucket' => $bucket,
'Key' => $key,
'Body' => $file,
'ACL' => 'public-read',
));
это хорошо работает, но у меня есть вопрос:
- Как получить url после успешной загрузки файла.
спасибо.
3 ответов
он возвращается в ответе. Вижу документы API для putObject.
$result = $client->putObject(array(
'Bucket' => $bucket,
'Key' => $key,
'Body' => $file,
'ACL' => 'public-read',
));
$url = $result['ObjectURL'];
вы также можете использовать getObjectUrl()
метод для получения URL.
$url = $client->getObjectUrl($bucket, $key);
возвращаемый результат является экземпляром Guzzle\Service\Resource\Model.
чтобы получить url-адрес, просто используйте метод get, предоставленный этим классом.
$result = $client->putObject(array(
'Bucket' => $bucket,
'Key' => $key,
'Body' => $file,
'ACL' => 'public-read',
));
$url = $result->get('ObjectUrl');
URL объекта доступен в $result
переменная, возвращаемая при вызове функции.
для доступа к URL объекта сделайте следующее:
$result = $client->putObject(array(
'Bucket' => $bucket,
'Key' => $key,
'Body' => $file,
'ACL' => 'public-read',
));
$data=$result->toArray();
$object_url=$data['ObjectURL'];