如何通过PHP api调用获取AWS S3存储桶位置?

时间:2019-03-04 08:18:41

标签: amazon-web-services amazon-s3 aws-php-sdk

我正在互联网上搜索如何通过API调用或使用他们的库直接在PHP中获取AWS s3存储桶区域,但运气不好找到该信息。

我有以下可用信息: 帐户凭据,存储桶名称,访问密钥+机密。那是我可以访问的多个存储桶,而且我需要以编程方式获取该区域,因此无法登录到aws控制台并检出。

2 个答案:

答案 0 :(得分:1)

假设您在$client中有一个AWS PHP Client的实例,那么您应该能够使用$client->getBucketLocation()找到该位置。

这是一些示例代码:

<?php

$result = $client->getBucketLocation([
    'Bucket' => 'yourBucket',
]);

结果将如下所示

[
    'LocationConstraint' => 'the-region-of-your-bucket',
]

答案 1 :(得分:1)

创建S3客户端时,即使不是您使用的区域,也可以使用AWS中的任何可用区域。

$s3Client = new Aws\S3\S3MultiRegionClient([
            'version'     => 'latest',
            'region'      => 'us-east-1',
            'credentials' => [
                'key'    => $accessKey,
                'secret' => $secretKey,
            ],
        ]);

$region = $s3Client->determineBucketRegion($bucketname);

-拉维·贾亚戈帕尔(Ravi Jayagopal)

https://S3MediaVault.com