谷歌云存储(不一样的谷歌驱动器)似乎有兼容S3 api:
https://developers.google.com/storage/docs/migrating#migration-simple
有人知道我是否可以使用aws/aws-sdk-php (https://packagist.org/packages/aws/aws-sdk-php)打包并配置它连接到我的谷歌云存储,而不是AWS S3?
我已经尝试了以下代码:
<?php使用Aws\S3\S3Client;使用联盟\Flysystem\文件系统;使用联盟\Flysystem\适配器\AwsS3作为适配器;require_once“供应商/ autoload.php”;error_reporting (E_ALL & ~ E_NOTICE);报错(“display_errors”,1);美元的客户= S3Client::工厂(数组(“关键”= >“MY_GCS_KEY”,“秘密”= >“MY_GCS_SECRET”,“端点”= >“storage.googleapis.com”));美元的文件系统=新文件系统(新适配器(美元的客户,“MY_GCS_BUCKET”));美元的文件系统- >写(“filename.txt”,“内容”);
但这给了我一个错误:
致命错误:Uncaught Aws\S3\Exception\InvalidAccessKeyIdException: Aws错误码:InvalidAccessKeyId,状态码:403,Aws请求ID: BF7C1317719A4C67, Aws错误类型:客户端,Aws错误消息:您提供的Aws访问密钥ID在我们的记录中不存在。在/var/www/prudhub/ vendor/aws/aws-sdk-php/src/Aws/Common/Exception/NamespaceExceptionFactory.php第91行中抛出
有人知道如何正确地设置aws/aws-sdk-php包来连接到谷歌云存储吗?
编辑
下面是让它工作的代码:
<?php使用Aws\S3\S3Client;使用联盟\Flysystem\文件系统;使用联盟\Flysystem\适配器\AwsS3作为适配器;require_once“供应商/ autoload.php”;美元的客户= S3Client::工厂(数组(“关键”= >“MY_GCS_KEY”,“秘密”= >“MY_GCS_SECRET”,“base_url”= >“https://storage.googleapis.com”));美元的文件系统=新文件系统(新适配器(美元的客户,“MY_GCS_BUCKET”));美元的文件系统- >写(“filename.txt”,“内容”);