【问题标题】:Uploading an image to Google bucket将图像上传到 Google 存储桶
【发布时间】:2019-09-03 21:34:05
【问题描述】:

我正在尝试将图像上传到 Google App Engine 上的存储桶。此处的 php 代码示例有效:

https://cloud.google.com/storage/docs/uploading-objects

我使用下面的代码来获取上面的$source

https://cloud.google.com/appengine/docs/standard/php/googlestorage/user_upload

但是,它说不推荐使用此解决方案 (createUploadUrl),它仅适用于我的开发服务器,不适用于我的生产服务器。使用 Google App Engine 获取文件路径的正确方法是什么?

【问题讨论】:

    标签: google-app-engine google-cloud-storage


    【解决方案1】:

    不推荐使用“createUploadUrl”方法,因为该 API 已弃用。正如您分享的第二个链接所示,您的应用需要升级到推荐的 API,即 Google Cloud 客户端库。它与您共享的第一个链接中的示例代码使用的 API 完全相同。

    有关调用正确的 API 方法来获取上传文件的 URL,请参阅https://googleapis.github.io/google-cloud-php/#/docs/cloud-storage/v1.14.0/storage/storageobject?method=signedUploadUrl

    【讨论】:

    • 谢谢——我想我不明白如何实现这个。如何编写一个函数以在
      之类的东西中使用 createUploadUrl,或者这不是它的工作原理?
    • 在下面作为新答案回复,因为 cmets 的长度有限。
    【解决方案2】:

    根据示例代码文件,一个典型的流程应该是这样的:

    1. 应用程序接收到合格的 GET 请求并触发处理请求的函数。函数中调用createUploadUrl方法生成上传URL (文件链接:https://github.com/GoogleCloudPlatform/php-docs-samples/blob/6d6757ee1df71e22ded52c2c78edf58786a99961/appengine/php55/storage/app.php#L43 )。
    2. 然后在HTML文件中,创建的上传URL将作为表单接受上传的动作参数。(文件链接: https://github.com/GoogleCloudPlatform/php-docs-samples/blob/6d6757ee1df71e22ded52c2c78edf58786a99961/appengine/php55/storage/storage.html.twig#L159 )。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-30
      • 2018-03-11
      • 2020-02-14
      • 2016-04-24
      • 1970-01-01
      相关资源
      最近更新 更多