メインコンテンツまでスキップ

エラーの処理

Verify API は、何らかの理由によってリクエストを完了できなかった場合、エラーを返します。 エラーの詳細は、エラーレスポンスの details に含まれています。

エラーハンドリングの詳細は Connect プロトコルドキュメントのError CodesError and EndStreamResponse、各言語ランタイムのErrorsを参照してください。

Verify API が返す ErrorDetails

Verify API は、以下の ErrorDetails を返す可能性があります。

google.rpc.ErrorInfo

このメッセージは、リクエストの処理中に Verify API 固有の事由によりエラーが発生した場合に返されます。 この Protobuf メッセージの定義はgoogle.rpc.ErrorInfoを参照してください。

reason フィールドには、pocketsign.verify.v2.ErrorReasonで定義された文字列が含まれます。 この値を確認することによって、エラーの原因を切り分けることができます。

以下のエラーレスポンス例をご参照ください。

{
"code": "unavailable",
"message": "upstream server is not working correctly",
"details": [
{
"type": "google.rpc.ErrorInfo",
"value": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX....",
"debug": {
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"reason": "ERROR_REASON_OCSP_REQUEST_FAILED",
"domain": "verify.p8n.app"
}
}
]
}

buf.validate.Violations

このメッセージは、リクエストのバリデーションに失敗した場合に返されます。 この Protobuf メッセージの定義はbuf.validate.Violationsを参照してください。

バリデーションの定義は、リクエストの Protobuf メッセージの定義に含まれています。 例えば、署名検証リクエスト pocketsign.verify.v2.VerificationService.Verify のリクエストメッセージである pocketsign.verify.v2.VerifyRequestの定義は、 Buf Schema Registry の Code セクションで確認することができます。

以下のエラーレスポンス例をご参照ください。

{
"code": "invalid_argument",
"message": "some arguments violate constraints",
"details": [
{
"type": "buf.validate.Violations",
"value": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX....",
"debug": {
"@type": "type.googleapis.com/buf.validate.Violations",
"violations": [
{
"fieldPath": "id",
"constraintId": "required",
"message": "id is required"
}
]
}
}
]
}

ハンドリングの方法

注記

このセクションは現在作成中です。

このトピックについて知りたい場合は、お問い合わせください。