Simple Message Queue(SMQ、旧称 MNS)へのアクセス時にエラーが発生した場合、SMQ は 3xx、4xx、または 5xx などの HTTP ステータスコードと、TEXT または XML 形式のメッセージ本文を返します。このトピックでは、SMQ のメッセージ本文とエラーコードについて説明します。
エラーコード
次の例は、エラー応答のメッセージ本文を示しています。
<?xml version="1.0" encoding="UTF-8"?>
<Error xmlns="http://mns.aliyuncs.com/doc/v1/">
<Code>InvalidArgument</Code>
<Message>Authorization header is invalid or missing.</Message>
<RequestId>04bb60e3-28aa-4706-99b0-9345d834****</RequestId>
<HostId>mns.cn-hangzhou.aliyuncs.com</HostId>
</Error> エラー応答のメッセージ本文には、次のパラメーターが含まれています。
コード: エラーコード。
メッセージ: エラーメッセージ。
リクエスト ID: リクエストを識別するために使用される一意の ID。
問題を解決できない場合は、リクエスト ID を提供してテクニカルサポートに問い合わせることができます。
ホスト ID: SMQ インスタンスへのアクセスに使用されるエンドポイント。
操作固有のエラーの詳細については、対応する API 操作を参照してください。
エラーコード
次の表は、エラー応答のエラーコードとエラーメッセージを示し、推奨される解決策を提供します。
HTTP ステータスコード | エラーコード | エラーメッセージ | 推奨される解決策 |
400 | InvalidAuthorizationHeader | Authorization ヘッダーの形式が無効です。 | AccessKey ID と AccessKey Secret が無効であるため、エラーメッセージが返されました。 AccessKey ID と AccessKey Secret を確認してください。 |
InvalidDateHeader | Date ヘッダーの形式が無効です。 | Date ヘッダーの形式が無効であるため、エラーメッセージが返されました。詳細については、共通パラメーターをご参照ください。 | |
InvalidDegist | 指定した Content-MD5 が無効です。 | Content-MD5 ヘッダーの値が無効であるため、エラーメッセージが返されました。 | |
InvalidRequestURL | HTTP リクエスト URL の形式が無効です。 | リクエストされた URL の形式が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
InvalidQueryString | HTTP リクエスト URL に無効なクエリ文字列項目「Element⑤」が含まれています。 | リクエストされた URL の形式が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
MalformedXML | 指定した XML の形式が正しくありません。 | 指定した XML 形式が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
MissingAuthorizationHeader | Authorization ヘッダーが必要です。 | リクエストヘッダーに 1 つ以上のフィールドが指定されていないため、エラーメッセージが返されました。詳細については、共通パラメーターをご参照ください。 | |
MissingDateHeader | Date ヘッダーが必要です。 | リクエストヘッダーに 1 つ以上のフィールドが指定されていないため、エラーメッセージが返されました。詳細については、共通パラメーターをご参照ください。 | |
MissingReceiptHandle | ReceiptHandle が必要です。 | 1 つ以上のリクエストパラメーターが指定されていないため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
MissingVisibilityTimeout | VisibilityTimeout が必要です。 | 1 つ以上のリクエストパラメーターが指定されていないため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
InvalidQueueName | 指定したキュー名が無効です。 キュー名は英字で始まり、英字、数字、または - のみを含める必要があります。 | 指定したキュー名が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
QueueNameLengthError | キュー名の長さは 1 ~ 255 の間である必要があります。 | 指定したキュー名が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
ReceiptHandleError | 指定した受信ハンドルが無効です。 | 1 つ以上のリクエストパラメーターが無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
QpsLimitExceeded | キューの QPS 制限を超えました。 | 1 秒あたりのリクエスト数が QPS 制限を超えているため、エラーメッセージが返されました。 QPS 制限を引き上げるには、SMQ テクニカルサポートにお問い合わせください。 | |
TopicNameInvalid | 指定したトピック名が無効です。 トピック名は英字または数字で始まり、英字、数字、または - のみを含める必要があります。 | 指定したトピック名が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
TopicNameLengthError | トピック名の長さが範囲外です。1 ~ 255 の間である必要があります。 | 指定したトピック名が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
SubscriptionNameInvalid | 指定したサブスクリプション名が無効です。 サブスクリプション名は英字または数字で始まり、英字、数字、または - のみを含める必要があります。 | 指定したサブスクリプション名が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
SubscriptionNameLengthError | サブスクリプション名の長さが範囲外です。1 ~ 255 の間である必要があります。 | 指定したサブスクリプション名が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
EndpointInvalid | 指定したエンドポイントの形式が無効です。 | 指定したエンドポイントが無効であるため、エラーメッセージが返されました。詳細については、エンドポイントをご参照ください。 | |
InvalidArgument | メッセージの長さは MaximumMessageSize より大きくすることはできません。 | メッセージ本文が大きすぎるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | |
サブスクリプションの MaximumMessageSize は、トピックの MaximumMessageSize より大きくなければなりません。 | キュー内のメッセージ本文が大きすぎるため、エラーメッセージが返されました。 キューメッセージのサイズを変更する必要があります。サイズは、トピックのメッセージサイズ以上である必要があります。 | ||
指定した XML は、公開されているスキーマに対して検証されませんでした。原因は Element① です。 | 指定した XML 形式が無効であるため、エラーメッセージが返されました。詳細については、API リファレンスを参照してください。 | ||
Element② の値は、Low③ ~ High④ 秒/バイトの間である必要があります。 | 1 つ以上のパラメーターに無効な値が指定されているため、エラーメッセージが返されました。 プロンプトに従って有効な値を指定する必要があります。 | ||
403 | AccessDenied | アクセスキー ID に関連付けられている OwnerId は、この操作に対して禁止されています。 | AccessKey ID と AccessKey Secret が無効であるため、エラーメッセージが返されました。 AccessKey ID と AccessKey Secret を確認してください。 |
InvalidAccessKeyId | 指定したアクセスキー ID は存在しません。 | アクセスキー ID が無効であるため、エラーメッセージが返されました。アクセスキー ID を確認してください。 | |
SignatureDoesNotMatch | 計算されたリクエスト署名が、指定された署名と一致しません。 キーと署名方法を確認してください。 | リクエスト署名が 無効であるため、エラーメッセージが返されました。詳細については、リクエストの署名をご参照ください。 | |
404 | MessageNotExist | メッセージが存在しません。 | キューに表示可能なメッセージが存在しないため、エラーメッセージが返されました。 |
指定した受信ハンドルは期限切れです。 | 非表示期間内にメッセージが使用されず、メッセージの受信ハンドルの期限が切れたため、エラーメッセージが返されました。 非表示期間内にメッセージを使用するか、より長い非表示期間を指定してください。 | ||
TopicNotExist | 指定したトピックは存在しません。 | トピックが存在しないため、エラーメッセージが返されました。トピックを作成する必要があります。 | |
SubscriptionNotExist | 指定したサブスクリプションは存在しません。 | 指定したサブスクリプションが存在しないため、エラーメッセージが返されました。サブスクリプションを作成する必要があります。 | |
QueueNotExist | 指定したキュー名は存在しません。 | 指定したキューが存在しないため、エラーメッセージが返されました。キューを作成する必要があります。 | |
408 | TimeExpired | 送信した HTTP リクエストの期限が切れました。 | リクエストが送信された時刻と SMQ サーバーがリクエストを受信した時刻の間隔が 15 分を超えているため、エラーメッセージが返されました。 ローカルシステムの時刻を確認してください。 |
409 | SubscriptionAlreadyExist | 作成しようとしているサブスクリプションは既に存在します。 | 指定したサブスクリプションの名前が既存のサブスクリプションと同じですが、パラメーターが既存のサブスクリプションと異なるため、エラーメッセージが返されました。 |
TopicAlreadyExist | 作成しようとしているトピックは既に存在します。 | 指定したトピックの名前が既存のトピックと同じですが、パラメーターが既存のトピックと異なるため、エラーメッセージが返されました。 | |
QueueAlreadyExist | 作成しようとしているキューは既に存在します。 | 指定したキューの名前が既存のキューと同じですが、パラメーターが既存のキューと異なるため、エラーメッセージが返されました。 | |
429 | TooManyRequests | リクエストが多すぎるため、クラスターフローリミッターによってリクエストが拒否されました。 | リクエスト数が調整のしきい値を超えると、調整ルールがトリガーされます。詳細については、調整ポリシーをご参照ください。 |
500 | InternalError | 内部エラーです。 | システムエラーが発生したため、エラーメッセージが返されました。 SMQ テクニカルサポートにお問い合わせください。 |
InternalServerError | 内部エラーです。 | システムエラーが発生したため、エラーメッセージが返されました。 SMQ テクニカルサポートにお問い合わせください。 |
①②: リクエスト本文のパラメーター。リクエスト本文のコンテンツは XML 形式です。
③: SMQ のパラメーターの最小値。
④: SMQ のパラメーターの最大値。
⑤: リクエストされた URL の QueryString パラメーター。