12

aws-amplify現在、反応ライブラリを使用して aws api-gateway によってトリガーされた aws ラムダ関数にデータを POST しようとしています。

コードは次のとおりです。

API.post("snippets","snippets/", {
        body: data,
    }).then(response => response).catch(console.log(err))

主なケースでは、すべて問題ありません。

400しかし、私のラムダ関数は、入力データを検証し、次のようなペイロードが返された状態コードを返すように設計されています。

{
    "errors": [
        {
            "field": "title",
            "message": "This field is required"
        }
    ]
}

フロントエンドに表示するためにこれらのエラーをキャッチしたいのaws-amplifyですが、文書化されていない動作をしているようです。

デフォルトでは、400返されるステータス コードは、デフォルトのエラー メッセージとともにスローされます。

Error: Request failed with status code 400
    at createError (createError.js:16)
    at settle (settle.js:18)
    at XMLHttpRequest.handleLoad (xhr.js:77)

この魔法のエラーの代わりに、返されたペイロードを取得する方法はありますか?

4

3 に答える 3