使用自定义元数据存储分段上传而不添加元数据

时间:2017-02-05 22:42:46

标签: file-upload google-cloud-storage google-cloud-platform multipart

我正在构建multipart/related上传请求,如here所述,请求正文中包含一些自定义对象元数据。上传成功,但未设置自定义元数据字段。

请求正文如下:

--===============5679188666781658153==
Content-Type: application/json; -charset="utf-8"
MIME-Version: 1.0

{"x-goog-meta-local-path": "./images/02-05-2017/2017-02-05T14:33:30.364112.jpg", "x-goog-meta-capture-ds": "2017-02-05T14:33:30.364112", "name": "0/02-05-2017/2017-02-05T14:33:30.364112.jpg"}
--===============5679188666781658153==
Content-Type: image/jpeg
MIME-Version: 1.0
Content-Transfer-Encoding: base64

<Image Data>

--===============5679188666781658153==--

根据我的理解,只要密钥以x-goog-meta-*为前缀,我就可以任意设置元数据密钥:值对。

我错过了什么吗?如何使用分段上传将自定义元数据保存到对象?

1 个答案:

答案 0 :(得分:0)

我在相关问题中找到了答案:Google Storage API custom header on node.js

正如jterrace所指出的那样:

在这里查看JSON请求构建器:https://developers.google.com/storage/docs/json_api/v1/objects/insert

您会注意到元数据是正文中的一个单独的键。所以你会想要这样的东西:

var metadata = {
    name: "name"
    contentLanguage: "en",
    metadata: {
      "something": "completely different",
    },
    acl: [...]
};