序列化响应格式

默认情况下,对象存储 API 使用 text/plain 响应格式。此外,还支持 JSON 和 XML 数据序列化响应格式。

要定义响应格式,请使用以下方法

方法

描述

format= format 查询参数

将此参数附加到 GET 请求的 URL 中,其中 formatjsonxml

Accept 请求头

GET 请求中包含此头。有效的头值是

text/plain

纯文本响应格式。默认值。

application/json

JSON 数据序列化响应格式。

application/xml

XML 数据序列化响应格式。

text/xml

XML 数据序列化响应格式。

示例 1. 带有 format 查询参数的 JSON 示例

例如,此请求使用 format 查询参数请求 JSON 响应

$ curl -i $publicURL?format=json -X GET -H "X-Auth-Token: $token"
HTTP/1.1 200 OK
Content-Length: 96
X-Account-Object-Count: 1
X-Timestamp: 1389453423.35964
X-Account-Meta-Subject: Literature
X-Account-Bytes-Used: 14
X-Account-Container-Count: 2
Content-Type: application/json; charset=utf-8
Accept-Ranges: bytes
X-Trans-Id: tx274a77a8975c4a66aeb24-0052d95365
Date: Fri, 17 Jan 2014 15:59:33 GMT

对象存储以 JSON 格式列出容器名称以及其他信息

[
   {
      "count":0,
      "bytes":0,
      "name":"janeausten"
   },
   {
      "count":1,
      "bytes":14,
      "name":"marktwain"
   }
]

示例 2. 带有 Accept 头部的 XML 示例

此请求使用 Accept 请求头请求 XML 响应

$ curl -i $publicURL -X GET -H "X-Auth-Token: $token" -H \
  "Accept: application/xml; charset=utf-8"
HTTP/1.1 200 OK
Content-Length: 263
X-Account-Object-Count: 3
X-Account-Meta-Book: MobyDick
X-Timestamp: 1389453423.35964
X-Account-Bytes-Used: 47
X-Account-Container-Count: 2
Content-Type: application/xml; charset=utf-8
Accept-Ranges: bytes
X-Trans-Id: txf0b4c9727c3e491694019-0052e03420
Date: Wed, 22 Jan 2014 21:12:00 GMT

对象存储以 XML 格式列出容器名称以及其他信息

<?xml version="1.0" encoding="UTF-8"?>
<account name="AUTH_73f0aa26640f4971864919d0eb0f0880">
    <container>
        <name>janeausten</name>
        <count>2</count>
        <bytes>33</bytes>
    </container>
    <container>
        <name>marktwain</name>
        <count>1</count>
        <bytes>14</bytes>
    </container>
</account>

本指南中的其余示例使用标准的、未序列化的响应。但是,所有执行列表操作的 GET 请求都接受 format 查询参数或 Accept 请求头。