如何使用symfony/gauferette/VichUploaderBundle将文件上传到谷歌云存储



早上好,

我正在通过VichUploaderBundle在本地上传我的文件。每件事都很完美。

现在我不想再在本地存储我的文件:我想将它们存储在谷歌云存储上。我发现KnpGaufretteBundle可以用于在云中存储文件。

那么,关于如何在google-cloud-storage上配置Gaufrette(php包)KnpGaufrette bundle(symfony bundle)来存储/上传/读取文件,是否有任何示例或示例链接?

我唯一找到的是链接,它是GoogleCloudStorage的适配器类。

我找到了另一个关于这个问题的链接,但它提出了一个在amazon-s3上存储文件的例子:upload-files-to-amazon-s3-with-symfony2-and-gaufrette

谢谢你的帮助。。。

可以使用KnpGaufretteBundle来实现这一点。您只需要创建一个工厂,创建一个经过完全身份验证的谷歌客户端,并将谷歌服务存储与该客户端一起返回。类似的东西:

/**
 * @return Google_Service_Storage
 */
public function createService($privateKeyPath, $password, $googleAccountName)
{
    $client = new Google_Client();
    $scopes = array(
        'https://www.googleapis.com/auth/devstorage.read_write'
    );
    $privateKey = file_get_contents($privateKeyPath);
    $credential = new Google_Auth_AssertionCredentials(
        $googleAccountName, $scopes, $privateKey, $password
    );
    $client->setAssertionCredentials($credential);
    return new Google_Service_Storage($client);
}

您还需要配置KnpGaufretteBundle,以便查看:KnpGaufretteBundle GoogleCloudStorage

GitHub上有一篇文章解释了工厂问题:后

相关内容

  • 没有找到相关文章

最新更新