JHipster(Spring Boot、Zuul Proxy、Ribbon ...)を介して作成されたマイクロサービスアーキテクチャを使用しています。私は2つのマイクロサービスとゲートウェイ(そしてもちろんレジストリ)を持っています。JHipster APIゲートウェイからマイクロサービスのHTTPエラーを取得する
マイクロサービスからHTTPエラーを送信するときに問題があります。ゲートウェイは、マイクロサービスからの応答を無視し、エラーコードを使用するだけで新しい応答を生成するようです。
例:
私のリクエストは、マイクロサービスでHTTP 404を生成します。直接microservice要求私は、次のレスポンスボディを持っている場合:
{
"code": "DEVICE_NOT_FOUND",
"message": "Gateway '12345678' unknown"
}
Iは、(microserviceに転送)ゲートウェイを要求した場合、私は今の代わりにサービスによって生成された1次の本体を有する。
私は理解していれば、ゲートウェイがwebcallからエラーを取得するときにゲートウェイから{
"timestamp": "2016-08-11T12:50:57.432+0000",
"status": 404,
"error": "Not Found",
"message": "No message available"
}
体は、... licroserviceエラー本体から
を任意のデータが含まれていない、それが発生した「/エラー」を呼び出しますコントローラーが応答を作成します。私は自分の/エラーコントローラを実装しようとしたが、元のボディを取得できませんでした。 @ControllerAdviceコントローラを追加しようとしましたが、ゲートウェイに例外が返されず、エラーコントローラへのリダイレクトだけです
私は何かを見逃しましたか? ご協力いただきありがとうございます。
JHipsterプロジェクトにgithubのプルリクエストを提案することを検討してください –