首页 > 解决方案 > 如何使用 JSON 为 Google Cloud Storage 设置自定义元数据?

问题描述

我正在尝试将自定义元数据添加到从我的站点到 GCS 的所有上传中。

在我添加的服务帐户 JSON 中,我发现了一些东西,但我无法让它工作:

  "metadata":  {
   "customMeta": "text here"

}

但它不起作用,我在这里错过了什么吗?谢谢。

更新

我正在使用 Wordpress 和一个名为 WP-Stateless 的插件,我询问了插件作者,他将我指向 [link](https://github.com/wpCloud/wp-stateless/blob/v2.2/lib/classes/ class-utility.php)我尝试添加几行,但在保存并尝试上传某些内容后,我检查了 GCS 控制台,没有新的元数据。

/* Add Google Storage metadata to our attachment */
          $fileLink = $bucketLink . '/' . ( !empty($media['name']) ? $media['name'] : $file );
          $cloud_meta = array(
            'id' => $media[ 'id' ],
            'name' => !empty($media['name']) ? $media['name'] : $file,
            'fileLink' => $fileLink,
            'storageClass' => $media[ 'storageClass' ],
            'mediaLink' => $media[ 'mediaLink' ],
            'selfLink' => $media[ 'selfLink' ],
            'bucket' => ud_get_stateless_media()->get( 'sm.bucket' ),
            'object' => $media,
            'sizes' => array(),
            'newDATA' => $_newData[ 'some text' ],
          );

但我上传了一些东西并检查了 GCS,但现在我上传的文件的元数据中有一些新数据文本。

标签: jsongoogle-cloud-storagemetadata

解决方案


正如文档所说,请求正文可以具有metadata带有 JSON 对象的字段,该对象具有元数据的键/值对。或metadata.key具有特定值的字段:

metadata - object - 用户提供的元数据,以键/值对的形式。

metadata.(key) - 字符串 - 单个元数据条目。可写


推荐阅读