我正在使用amazon-php-sdk。在我的应用程序中,我接受表单中的密钥和秘密值,并通过连接到Aws。这是我的代码。
<?php
require 'aws-autoloader.php';
use Aws\S3\S3Client;
try {
$s3Client = S3Client::factory(array(
'key' => 'my key',
'secret' => 'my secret key'
));
}
catch(S3Exception $e) {
echo 'Msg' . $e->getMessage();
}
?>
答案 0 :(得分:11)
正如Michael指出的那样,您必须提出检查连接的实际请求.AWS不鼓励任何不必要的验证请求,这些请求会影响您的应用程序和使用账单的性能。
但是,如果您需要验证,可以在广告连播中使用ListBucket或HEAD请求。
查看此最佳做法article。
require 'vendor/autoload.php';
use Aws\S3\S3Client;
try {
// Instantiate the S3 client with your AWS credentials
$s3Client = S3Client::factory(array(
'credentials' => array(
'key' => 'YOUR_AWS_ACCESS_KEY_ID',
'secret' => 'YOUR_AWS_SECRET_ACCESS_KEY',
)
));
$buckets = $s3Client->listBuckets();
}
catch(Exception $e) {
exit($e->getMessage());
}
回答你的第二个问题。你可以使用doesObjectExist函数返回布尔值。