2016-02-09 2 views
2

Я использую Zuul с Eureka как обратный прокси. Когда служба нисходящего потока возвращает исключение клиента 4xx, Ribbon преобразует исключение в ошибку сервера 500.исключение Zuul Ribbon всегда возвращает 500 ответ

Пример вывода на странице Whitelabel является:

There was an unexpected error (type=Internal Server Error, status=500). 
403 FORBIDDEN 

RibbonRoutingFilter появляется всегда конвертировать любое исключение 500. https://github.com/spring-cloud/spring-cloud-netflix/blob/master/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonRoutingFilter.java#L81

Есть ли способ, чтобы переопределить это поведение и иметь исходный код статуса отправляется клиенту.

+0

Итак, я пытаюсь воспроизвести это, и если клиент отправляет обратно действительный ответ с 401, например, соответствующий код ошибки сообщается обратно клиенту. https://github.com/spring-cloud/spring-cloud-netflix/blob/master/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/ RibbonRoutingFilter.java # L76-L77 У вас есть способ воспроизвести это? – spencergibb

+0

Я смог воспроизвести, используя 503, который является особым случаем в ленте. Если у вас есть проект, который может воспроизвести это, создайте проблему. – spencergibb

ответ

Смежные вопросы