我正在尝试将自定义元数据添加到从我的网站到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,但是newDATA在我上传的文件的元数据中有一些文本。
答案 0 :(得分:1)
正如the documentation所说,请求正文可以具有metadata
字段,该字段带有JSON对象,该对象具有元数据的键/值对。或具有特定值的metadata.key
字段:
元数据-对象-用户提供的键/值对中的元数据。
元数据。(键)-字符串-单个元数据条目。可写的
答案 1 :(得分:1)
这是一个对我有用的例子(注意元数据中的元数据)
const file = bucket.file(filename);
await file.save(JSON.stringify(data), { metadata: { metadata: { user: 'user1' }}});