

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 解释 Amazon SQS JSON API 响应
<a name="sqs-json-api-responses"></a>

当您向 Amazon SQS 发送请求时，它会返回包含结果的 JSON 响应。响应结构取决于您使用的 API 操作。

要了解这些响应的详细信息，请参阅：
+ 《Amazon Simple Queue Service API 参考》**的 [API 操作](https://docs.amazonaws.cn/AWSSimpleQueueService/latest/APIReference/API_Operations.html)中的特定 API 操作
+ 这些区域有：[亚马逊 SQS Amazon JSON 协议 FAQs](sqs-json-faqs.md)

## 成功的 JSON 响应结构
<a name="sqs-json-api-successful-response-structure"></a>

如果请求成功，则主响应元素为 `x-amzn-RequestId`，其中包含请求的通用唯一标识符 (UUID) 以及其他附加的响应字段。例如，以下 [https://docs.amazonaws.cn/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html](https://docs.amazonaws.cn/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html) 响应包含 `QueueUrl` 字段，后者又包含所创建队列的 URL。

```
HTTP/1.1 200 OK
x-amzn-RequestId: <requestId>
Content-Length: <PayloadSizeBytes>
Date: <Date>
Content-Type: application/x-amz-json-1.0
{
    "QueueUrl":"https://sqs.us-east-1.amazonaws.com/111122223333/MyQueue"
}
```

## JSON 错误响应结构
<a name="sqs-api-error-response-structure"></a>

如果请求失败，则 Amazon SQS 将返回主响应，包括 HTTP 标头和正文。

在 HTTP 标头中，`x-amzn-RequestId` 包含请求的 UUID。`x-amzn-query-error` 包含两条信息：错误类型，以及错误是创建者错误还是使用者错误。

在响应正文中，`"__type"` 表示其他错误详细信息，`Message` 以可读的格式指明错误情况。

以下是 JSON 格式的错误响应示例：

```
HTTP/1.1 400 Bad Request
x-amzn-RequestId: 66916324-67ca-54bb-a410-3f567a7a0571
x-amzn-query-error: AWS.SimpleQueueService.NonExistentQueue;Sender
Content-Length: <PayloadSizeBytes>
Date: <Date>
Content-Type: application/x-amz-json-1.0
{
    "__type": "com.amazonaws.sqs#QueueDoesNotExist",
    "message": "The specified queue does not exist."
}
```