我使用了aws-sdk(https://github.com/aws/aws-sdk-php)。
代码
$result = $client->putObject(array(
'Bucket' => $bucket,
'Key' => $key,
'Body' => $file,
'ACL' => 'public-read',
));
它运行良好,但我有一个问题:
- 如何在文件上传成功后获取url
谢谢。
它在响应中返回。有关putObject,请参阅API文档。
$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'];