首页 文章

Laravel集成了Google Cloud 端存储

提问于
浏览
2

我正在尝试将Google Cloud 端存储整合到文件上传中,并在存储在Google Compute Engine中的laravel应用中提供服务 .

最好的做法是什么?这是使用Google Cloud 端存储的正确方法吗?

我应该使用存储外观吗?或者将本地文件上传到 Cloud 端的作业?

谢谢

2 回答

  • 1

    您可以使用Google APIs Client Library for PHP向Google Cloud 端存储JSON API发送请求 . 访问这个link for example .

  • 1

    更好的方法是 directly uploading 到 Cloud 存储 .

    由于直接上传只需要在其他进程中上传文件数据一次,您必须先将其上传到某个临时文件,然后再从该临时文件上传到 Cloud 存储 . 因此,数据传输越多,速度就越慢,图像也可能不可用,直到时间作业运行并将其从临时位置移动到 Cloud 存储 .

    现在让我们讨论如何使用Laravel直接在 Cloud 存储中上传 . 可以遵循以下步骤来实现它: -

    • 导入CloudStorageTools
      use google\appengine\api\cloud_storage\CloudStorageTools;

    • 创建存储桶网址直接上传文件
      $bucket_options = ['gs_bucket_name' => $my_bucket]; $cloud_storage_upload_url = CloudStorageTools::createUploadUrl('/upload/handler', $bucket_options);

    • 现在上面生成的 $cloud_storage_upload_url 可以在表单的 action 标签中直接上传文件 .
      Example:-
      <form action="{{ upload_url }}" enctype="multipart/form-data" method="post">

    Footnote :- 我们生成的上传网址只能在 10 minutes 创建之前访问 .

    也可以找到相同的文档here .

相关问题